it('adds the compression middleware when enabled from gasket config', async () => { gasket.config.express = { compression: true }; await plugin.hooks.createServers(gasket, {}); const compressionUsage = findCall( app.use, mw => mw === compressionMiddleware); assume(compressionUsage).to.not.be.null(); });
describe('.log', function () { it('proxies to winston.log with predefined level', async function () { const stub = sinon.stub(log.winston, 'log'); assume(log.log).to.be.a('function'); log.log('Testing'); assume(stub.getCall(0).args).to.deep.equal(['debug', 'Testing']); }); });
it('adds the cookie-parser middleware before plugin middleware', async () => { await plugin.hooks.createServers(gasket, {}); const cookieParserUsage = findCall( app.use, (mw) => mw === cookieParserMiddleware); assume(cookieParserUsage).to.not.be.null(); const withEvent = event => calledEvent => calledEvent === event; const middlewareInjection = findCall(gasket.exec, withEvent('middleware')); const routeInjection = findCall(gasket.exec, withEvent('express')); // callId can be used to determine relative call ordering assume(cookieParserUsage.callId).to.be.lessThan(middlewareInjection.callId); assume(cookieParserUsage.callId).to.be.lessThan(routeInjection.callId); });
it('doesnt throw if preset found', () => { let error; try { results = makeCreateContext(argv, flags); } catch (err) { error = err; } assume(error).to.be.falsey(); });
it('adds the errorMiddleware', async () => { const errorMiddlewares = [sinon.spy()]; gasket.exec.withArgs('errorMiddleware').resolves(errorMiddlewares); await plugin.hooks.createServers(gasket, {}); const errorMiddleware = findCall( app.use, (mw) => mw === errorMiddlewares[0]); assume(errorMiddleware).to.not.be.null(); });
it('adds the compression middleware by default', async () => { await plugin.hooks.createServers(gasket, {}); const compressionUsage = findCall( app.use, mw => mw === compressionMiddleware); assume(compressionUsage).to.not.be.null(); });
it('does not add the compression middleware when disabled from gasket config', async () => { gasket.config.fastify = { compression: false }; await plugin.hooks.createServers(gasket, {}); const compressionUsage = findCall( app.use, mw => mw === compressionMiddleware); assume(compressionUsage).to.be.null(); });
it('adds the cookie-parser middleware with a excluded path', async () => { gasket.config.fastify = { excludedRoutesRegex: /^(?!\/_next\/)/ }; await plugin.hooks.createServers(gasket, {}); const cookieParserUsage = findCall( app.use, (path, mw) => mw === cookieParserMiddleware); assume(cookieParserUsage).to.not.be.null(); });
it('does not add the compression middleware when disabled from gasket config', async () => { gasket.config.fastify = { compression: false }; await plugin.hooks.createServers(gasket, {}); const compressionUsage = findCall( app.use, mw => mw === compressionMiddleware); assume(compressionUsage).to.be.null(); });
it('adds the cookie-parser middleware with a excluded path', async () => { gasket.config.express = { excludedRoutesRegex: /^(?!\/_next\/)/ }; await plugin.hooks.createServers(gasket, {}); const cookieParserUsage = findCall( app.use, (path, mw) => mw === cookieParserMiddleware); assume(cookieParserUsage).to.not.be.null(); });
it('doesnt throw if preset found', () => { let error; try { results = makeCreateContext(argv, flags); } catch (err) { error = err; } assume(error).to.be.falsey(); });
it('doesnt throw if preset path found', () => { let error; try { results = makeCreateContext(argv, { 'preset-path': ['somePath'] }); } catch (err) { error = err; } assume(error).to.be.falsey(); });
it('adds the errorMiddleware', async () => { const errorMiddlewares = [sinon.spy()]; gasket.exec.withArgs('errorMiddleware').resolves(errorMiddlewares); await plugin.hooks.createServers(gasket, {}); const errorMiddleware = findCall( app.use, (mw) => mw === errorMiddlewares[0]); assume(errorMiddleware).to.not.be.null(); });
it('adds the compression middleware by default', async () => { await plugin.hooks.createServers(gasket, {}); const compressionUsage = findCall( app.use, mw => mw === compressionMiddleware); assume(compressionUsage).to.not.be.null(); });
it('adds the compression middleware when enabled from gasket config', async () => { gasket.config.express = { compression: true }; await plugin.hooks.createServers(gasket, {}); const compressionUsage = findCall( app.use, mw => mw === compressionMiddleware); assume(compressionUsage).to.not.be.null(); });