From 11cf48259a987ab2d48355f14b3f11d897d6c8fa Mon Sep 17 00:00:00 2001 From: Omar Rizwan Date: Sun, 14 Mar 2021 21:33:23 -0700 Subject: test: separate tests from background.js, clean up and document a bit also makes the test more lenient (subset instead of equality for tab entries) --- test/test.js | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 test/test.js (limited to 'test/test.js') diff --git a/test/test.js b/test/test.js new file mode 100644 index 0000000..1288bf4 --- /dev/null +++ b/test/test.js @@ -0,0 +1,21 @@ +const assert = require('assert'); + +// mock chrome namespace +global.chrome = {}; +// run background.js +const {router, findRoute} = require('../extension/background'); + +(async () => { + const tabRoute = await router['/tabs/by-id/*'].readdir(); + assert(['.', '..', 'url.txt', 'title.txt', 'text.txt'] + .every(file => tabRoute.entries.includes(file))); + + assert.deepEqual(await router['/'].readdir(), + { entries: ['.', '..', 'windows', 'extensions', 'tabs', 'runtime'] }); + assert.deepEqual(await router['/tabs'].readdir(), + { entries: ['.', '..', 'create', + 'by-id', 'by-title', 'last-focused'] }); + + assert.deepEqual(findRoute('/tabs/by-id/TABID/url.txt'), + router['/tabs/by-id/*/url.txt']); +})(); -- cgit v1.2.3