import { expect } from 'chai';
import { runServer } from '../helpers';
import * as fs from 'fs';
import * as path from 'path';
describe('404 Middleware', function () {
it('Should respond with 404 on bad path', function (done) {
runServer({
allowed_ips: [],
basicAuth: [],
dirList: false,
serveDir: 'site/',
opbeat: false,
open: false
}, '/foo/bar', function (response : any) {
expect(response.ok).to.be.false;
expect(response.status).to.equal(404);
expect(response.text()).to.eventually.include('Cannot GET').notify(done);
});
describe('Custom 404 Page', function () {
const CUSTOM_PAGE = path.join(__dirname, '..', '..', 'site', '.404.html')
beforeEach(function () {
fs.writeFileSync(CUSTOM_PAGE, 'Custom 404 Page');
afterEach(function () {
fs.unlinkSync(CUSTOM_PAGE);
it('should have custom page', function (done) {
expect(response.text()).to.eventually.include('Custom 404 Page').notify(done);