minor refactor of router to use explicit exceptions
[squeep-api-dingus] / test / lib / router.js
index 8a9d1e26f8e1e502cc5b0e164bb78d56ec457785..bcb45f2d00bbfacad8bb33c5fe593cbfce6183b5 100644 (file)
@@ -6,7 +6,7 @@ const assert = require('assert');
 const sinon = require('sinon'); // eslint-disable-line node/no-unpublished-require
 const Router = require('../../lib/router');
 const PathParameter = require('../../lib/router/path-parameter');
-const { DingusError } = require('../../lib/errors');
+const { DingusError, RouterNoPathError, RouterNoMethodError } = require('../../lib/errors');
 
 const noExpectedException = 'did not get expected exception';
 
@@ -311,8 +311,7 @@ describe('Router', function () {
         router.lookup(method, path, ctx);
         assert.fail(noExpectedException);
       } catch (e) {
-        assert(e instanceof DingusError);
-        assert.strictEqual(e.message, 'NoPath');
+        assert(e instanceof RouterNoPathError);
       }
     });
     it('finds handler', function () {
@@ -353,8 +352,7 @@ describe('Router', function () {
         router.lookup(method, path, ctx);
         assert.fail(noExpectedException);
       } catch (e) {
-        assert(e instanceof DingusError);
-        assert.strictEqual(e.message, 'NoMethod');
+        assert(e instanceof RouterNoMethodError);
       }
     });
     it('does not lookup non-existent path', async function () {
@@ -365,8 +363,7 @@ describe('Router', function () {
         router.lookup(method, path, ctx);
         assert.fail(noExpectedException);
       } catch (e) {
-        assert(e instanceof DingusError);
-        assert.strictEqual(e.message, 'NoPath');
+        assert(e instanceof RouterNoPathError);
       }
     });