throw if sinon not provided
authorJustin Wind <justin.wind+git@gmail.com>
Thu, 1 Aug 2024 22:32:19 +0000 (15:32 -0700)
committerJustin Wind <justin.wind+git@gmail.com>
Thu, 1 Aug 2024 22:32:19 +0000 (15:32 -0700)
lib/stub-logger.js
test/lib/stub-logger.js

index 428fdd0a4919265481b51dca638f6650a2ae8930..9564c843d45659c46581f83ed5b14f7b0d1f87cc 100644 (file)
@@ -1,7 +1,10 @@
 'use strict';
 
+const assert = require('node:assert');
+
 class StubLogger {
   constructor(sinon, verbose = false) {
+    assert.strictEqual(sinon?.constructor?.name, 'Sandbox', 'sinon dependency not recognized');
     this.sinon = sinon;
     const logger = (process.env.VERBOSE_TESTS || verbose) ? console : this.constructor._nullLogger;
     Object.keys(this.constructor._nullLogger).forEach((level) => {
index 3d5bb6a4f2cfea6ca2a705a06e42dac0466482c4..528fba53a84faceb2af1340940c4ab20adc3d208 100644 (file)
@@ -17,6 +17,11 @@ describe('StubLogger', function () {
       assert(logger[level][property]);
     });
   }
+  describe('sinon dependency', function () {
+    it('is required', function () {
+      assert.throws(() => new StubLogger(), assert.AssertionError);
+    });
+  });
   describe('null logger', function () {
     beforeEach(function () {
       logger = new StubLogger(sinon);
@@ -59,4 +64,4 @@ describe('StubLogger', function () {
       assertAllLevels('notCalled');
     });
   }); // console logger
-}); // StubLogger
\ No newline at end of file
+}); // StubLogger