summaryrefslogtreecommitdiff
path: root/test/test.js
blob: 21895591de224ec9a96fccb4ddab73dc5f3a5e16 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
const assert = require('assert');

// mock chrome namespace
global.window = global;
global.chrome = {};
// run background.js
const {Routes, tryMatchRoute} = require('../extension/background');

function readdir(path) {
  return Routes['/tabs/by-id/#TAB_ID'].readdir({path});
}

(async () => {
  const tabReaddir = await readdir('/tabs/by-id/#TAB_ID');
  assert(['.', '..', 'url.txt', 'title.txt', 'text.txt']
    .every(file => tabReaddir.entries.includes(file)));

  assert.deepEqual(await Routes['/'].readdir(),
                   { entries: ['.', '..', 'windows', 'extensions', 'tabs', 'runtime'] });
  assert.deepEqual(await Routes['/tabs'].readdir(),
                   { entries: ['.', '..', 'create',
                               'by-title', 'last-focused', 'by-id'] });

  assert.deepEqual(tryMatchRoute('/'), [Routes['/'], {}]);

  assert.deepEqual(tryMatchRoute('/tabs/by-id/10/url.txt'),
                   [Routes['/tabs/by-id/#TAB_ID/url.txt'], {tabId: 10}]);
})();