add some support for tickets, introspection method, minor fixes
[squeep-indieauth-helper] / test / lib / common.js
index 8b223dadc0ea9c429d7023f3ba1056f534e12aac..7ebc91b45b6cf81c47306b48a7cfc62c5ceffe78 100644 (file)
@@ -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,46 @@ 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
+
+  describe('formData', function () {
+    it('covers', function () {
+      const result = common.formData({
+        key: 'value',
+        foo: 'bar',
+      });
+      assert.strictEqual(result, 'key=value&foo=bar');
+    });
+  }); // formData
+
 }); // common
\ No newline at end of file