X-Git-Url: https://git.squeep.com/?a=blobdiff_plain;f=test%2Flib%2Fcommon.js;h=fe0240718bf8192f8e3761219ef33fd665e8d544;hb=cf9590ecbcd4b0a7c01f153cacade619518f84f0;hp=8b223dadc0ea9c429d7023f3ba1056f534e12aac;hpb=e648aedc1c912cd07da0b1dad7be3910248b25c9;p=squeep-indieauth-helper diff --git a/test/lib/common.js b/test/lib/common.js index 8b223da..fe02407 100644 --- a/test/lib/common.js +++ b/test/lib/common.js @@ -18,15 +18,6 @@ describe('common', function () { }); }); // fileScope - describe('base64ToBase64URL', function () { - it('works', function () { - const b64 = 'ab/cd+e='; - const expected = 'ab_cd-e'; - const result = common.base64ToBase64URL(b64); - assert.strictEqual(result, expected); - }); - }); // base64ToBase64URL - describe('pick', function () { it('picks', function () { const srcObj = { @@ -97,4 +88,36 @@ describe('common', function () { }); }); // axiosResponseLogData + describe('setSymmetricDifference', function () { + it('covers difference', function () { + const setA = new Set([1, 2, 3]); + const setB = new Set([2, 3, 4]); + const expected = new Set([1, 4]); + const result = common.setSymmetricDifference(setA, setB); + assert(result.size); + assert.deepStrictEqual(result, expected); + }); + it('covers no difference', function () { + const setA = new Set([1, 2, 3, 4]); + const setB = new Set([1, 2, 3, 4]); + const expected = new Set(); + const result = common.setSymmetricDifference(setA, setB); + assert(!result.size); + assert.deepStrictEqual(result, expected); + }); + }); // setSymmetricDifference + + describe('properURLComponentName', function () { + it('maps proper names', function () { + [ + ['hash', 'fragment'], + ['protocol', 'scheme'], + ['host', 'host'], + ].forEach(([name, expected]) => { + const result = common.properURLComponentName(name); + assert.strictEqual(result, expected); + }); + }); + }); // properURLComponentName + }); // common \ No newline at end of file