From 50dd0354d16d9f82b27f86715ed6d7df60b31edb Mon Sep 17 00:00:00 2001 From: aaronmyatt Date: Fri, 4 Dec 2020 23:00:31 +0800 Subject: [PATCH] adds admin middleware tests --- .../unit/@node-red/editor-api/lib/index_spec.js | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/test/unit/@node-red/editor-api/lib/index_spec.js b/test/unit/@node-red/editor-api/lib/index_spec.js index 1d5e9380b..805169307 100644 --- a/test/unit/@node-red/editor-api/lib/index_spec.js +++ b/test/unit/@node-red/editor-api/lib/index_spec.js @@ -96,4 +96,21 @@ describe("api/index", function() { request(api.httpAdmin).get("/auth/login").expect(200).end(done) }) }); + + describe('initialises api with admin middleware', function(done) { + it('ignores non-function values',function(done) { + api.init({ httpAdminRoot: true, httpAdminMiddleware: undefined },{},{},{}); + const middlewareFound = api.httpAdmin._router.stack.filter((layer) => layer.name === 'testMiddleware') + should(middlewareFound).be.empty(); + done(); + }); + + it('only accepts functions as middleware',function(done) { + const testMiddleware = function(req, res, next){ next(); }; + api.init({ httpAdminRoot: true, httpAdminMiddleware: testMiddleware },{},{},{}); + const middlewareFound = api.httpAdmin._router.stack.filter((layer) => layer.name === 'testMiddleware') + should(middlewareFound).be.length(1); + done(); + }); + }); });