switch from axios to got package for client requests
[squeep-indieauth-helper] / test / lib / common.js
index 20911c1d5d745eb0749df5dd69a58cbd173163f2..ff250a4c43098e0be305ab523d2d396eb6defc8b 100644 (file)
@@ -46,47 +46,121 @@ describe('common', function () {
     });
   }); // logTruncate
 
-  describe('axiosResponseLogData', function () {
+  describe('gotResponseLogData', function () {
     it('covers', function () {
       const response = {
-        status: 200,
-        statusText: 'OK',
+        statusCode: 200,
+        statusMessage: 'OK',
         headers: {
           'Content-Type': 'text/plain',
         },
         otherData: 'blah',
-        data: 'Old Mother West Wind had stopped to talk with the Slender Fir Tree. "I\'ve just come across the Green Meadows," said Old Mother West Wind, “and there I saw the Best Thing in the World.”',
+        timings: {
+          phases: {
+            total: 89,
+          },
+        },
+        retryCount: 0,
+        redirectUrls: [],
+        body: 'Old Mother West Wind had stopped to talk with the Slender Fir Tree. "I\'ve just come across the Green Meadows," said Old Mother West Wind, “and there I saw the Best Thing in the World.”',
+      };
+      const expected = {
+        statusCode: 200,
+        statusMessage: 'OK',
+        elapsedTimeMs: 89,
+        headers: {
+          'Content-Type': 'text/plain',
+        },
+        body: 'Old Mother West Wind had stopped to talk with the Slender Fir Tree. "I\'ve just come across the Green... (184 bytes)',
+      };
+      const result = common.gotResponseLogData(response);
+      assert.deepStrictEqual(result, expected);
+    });
+    it('covers no body', function () {
+      const response = {
+        statusCode: 200,
+        statusMessage: 'OK',
+        headers: {
+          'Content-Type': 'text/plain',
+        },
+        timings: {
+          phases: {
+            total: 89,
+          },
+        },
+        retryCount: 1,
       };
       const expected = {
-        status: 200,
-        statusText: 'OK',
+        statusCode: 200,
+        statusMessage: 'OK',
         headers: {
           'Content-Type': 'text/plain',
         },
-        data: 'Old Mother West Wind had stopped to talk with the Slender Fir Tree. "I\'ve just come across the Green... (184 bytes)',
+        elapsedTimeMs: 89,
+        retryCount: 1,
+      };
+      const result = common.gotResponseLogData(response);
+      assert.deepStrictEqual(result, expected);
+    });
+    it('covers json', function () {
+      const response = {
+        statusCode: 200,
+        statusMessage: 'OK',
+        headers: {
+          'Content-Type': 'application/json',
+        },
+        timings: {
+          phases: {
+            total: 89,
+          },
+        },
+        body: {
+          foo: 'bar',
+        },
+        redirectUrls: ['https://redirect.example.com/'],
+      };
+      const expected = {
+        statusCode: 200,
+        statusMessage: 'OK',
+        headers: {
+          'Content-Type': 'application/json',
+        },
+        elapsedTimeMs: 89,
+        body: {
+          foo: 'bar',
+        },
+        redirectUrls: ['https://redirect.example.com/'],
       };
-      const result = common.axiosResponseLogData(response);
+      const result = common.gotResponseLogData(response);
       assert.deepStrictEqual(result, expected);
     });
-    it('covers no data', function () {
+    it('covers buffer', function () {
       const response = {
-        status: 200,
-        statusText: 'OK',
+        statusCode: 200,
+        statusMessage: 'OK',
         headers: {
           'Content-Type': 'text/plain',
         },
+        timings: {
+          phases: {
+            total: 89,
+          },
+        },
+        body: Buffer.from('ᘛ⁐̤ᕐᐷ'),
       };
       const expected = {
-        status: 200,
-        statusText: 'OK',
+        statusCode: 200,
+        statusMessage: 'OK',
         headers: {
           'Content-Type': 'text/plain',
         },
+        elapsedTimeMs: 89,
+        body: '<Buffer 14 bytes>',
       };
-      const result = common.axiosResponseLogData(response);
+      const result = common.gotResponseLogData(response);
       assert.deepStrictEqual(result, expected);
     });
-  }); // axiosResponseLogData
+  }); // gotResponseLogData
 
   describe('setSymmetricDifference', function () {
     it('covers difference', function () {
@@ -120,14 +194,4 @@ describe('common', function () {
     });
   }); // 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