51 lines
1.0 KiB
JavaScript
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();
|
|
});
|
|
});
|
|
}); |