This repository has been archived on 2018-10-12. You can view files and clone it, but cannot push or open issues or pull requests.
crispy-train/test/end-to-end/index_test.js

51 lines
1.0 KiB
JavaScript

'use strict';
const supertest = require('supertest'),
expect = require('chai').expect;
let server = supertest.agent('http://localhost:3000');
suite('Example tests', () => {
test('Index page works as expected', (done) => {
server.get('/')
.expect('Content-type', /json/)
.expect(200)
.end((err, res) => {
expect(res.status).to.equal(200);
expect(res.body.error).to.be.undefined;
expect(res.body).to.deep.equal({
status: 200,
data: {
index: { title: 'Express' },
},
});
done();
});
});
test('404 page works as expected', (done) => {
server.get('/foo')
.expect('Content-type', /json/)
.expect(404)
.end((err, res) => {
expect(res.status).to.equal(404);
expect(res.body.status).to.equal(res.status);
expect(res.body.message).to.be.ok;
let expected = {
status: 404,
message: 'Not Found',
};
if (process.env.NODE_ENV === 'development') {
expected.error = {
status: 404,
};
}
expect(res.body).to.deep.equal(expected);
done();
});
});
});