Skip to content
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
53 changes: 31 additions & 22 deletions test/test.js
Original file line numberDiff line numberDiff line change
Expand Up@@ -6,22 +6,23 @@ var create = require('..');
describe('HTTP Errors', function () {
it('create(status)', function () {
var err = create(404);
assert.equal(err.name, 'NotFoundError')
assert.equal(err.name, 'NotFoundError');
assert.equal(err.message, 'Not Found');
assert.equal(err.status, 404);
assert.equal(err.statusCode, 404);
})

it('create(status) for 300', function () {
var err = create(300);
assert.equal(err.name, 'Error');
assert.equal(err.message, 'Multiple Choices');
assert.equal(err.status, 300);
assert.equal(err.statusCode, 300);
})

it('create(status, msg)', function () {
var err = create(404, 'LOL');
assert.equal(err.name, 'NotFoundError')
assert.equal(err.name, 'NotFoundError');
assert.equal(err.message, 'LOL');
assert.equal(err.status, 404);
assert.equal(err.statusCode, 404);
Expand All@@ -30,8 +31,8 @@ describe('HTTP Errors', function () {
it('create(status, props)', function () {
var err = create(404, {
id: 1
})
assert.equal(err.name, 'NotFoundError')
});
assert.equal(err.name, 'NotFoundError');
assert.equal(err.message, 'Not Found');
assert.equal(err.status, 404);
assert.equal(err.statusCode, 404);
Expand All@@ -42,8 +43,8 @@ describe('HTTP Errors', function () {
var err = create(404, {
id: 1,
status: 500
})
assert.equal(err.name, 'NotFoundError')
});
assert.equal(err.name, 'NotFoundError');
assert.equal(err.message, 'Not Found');
assert.equal(err.status, 404);
assert.equal(err.statusCode, 404);
Expand All@@ -54,8 +55,8 @@ describe('HTTP Errors', function () {
var err = create(404, {
id: 1,
statusCode: 500
})
assert.equal(err.name, 'NotFoundError')
});
assert.equal(err.name, 'NotFoundError');
assert.equal(err.message, 'Not Found');
assert.equal(err.status, 404);
assert.equal(err.statusCode, 404);
Expand All@@ -66,24 +67,24 @@ describe('HTTP Errors', function () {
var err = create({
id: 1
});
assert.equal(err.id, 1);
assert.equal(err.name, 'InternalServerError')
assert.equal(err.name, 'InternalServerError');
assert.equal(err.message, 'Internal Server Error');
assert.equal(err.status, 500);
assert.equal(err.statusCode, 500);
assert.equal(err.id, 1);
})

it('create(msg, status)', function () {
var err = create('LOL', 404);
assert.equal(err.name, 'NotFoundError')
assert.equal(err.name, 'NotFoundError');
assert.equal(err.message, 'LOL');
assert.equal(err.status, 404);
assert.equal(err.statusCode, 404);
})

it('create(msg)', function () {
var err = create('LOL');
assert.equal(err.name, 'InternalServerError')
assert.equal(err.name, 'InternalServerError');
assert.equal(err.message, 'LOL');
assert.equal(err.status, 500);
assert.equal(err.statusCode, 500);
Expand All@@ -93,7 +94,7 @@ describe('HTTP Errors', function () {
var err = create('LOL', {
id: 1
});
assert.equal(err.name, 'InternalServerError')
assert.equal(err.name, 'InternalServerError');
assert.equal(err.message, 'LOL');
assert.equal(err.status, 500);
assert.equal(err.statusCode, 500);
Expand All@@ -105,25 +106,28 @@ describe('HTTP Errors', function () {
_err.status = 404;
var err = create(_err);
assert.equal(err, _err);
assert.equal(err.name, 'Error');
assert.equal(err.message, 'LOL');
assert.equal(err.status, 404);
assert.equal(err.statusCode, 404);
assert.equal(err.expose, true);

_err = new Error('LOL');
err = create(_err);
assert.equal(err, _err);
assert.equal(err.name, 'Error');
assert.equal(err.message, 'LOL');
assert.equal(err.status, 500);
assert.equal(err.statusCode, 500);
assert.equal(err.expose, false);
})


it('create(err) with invalid err.status', function () {
var _err = new Error('Connection refused');
_err.status = -1;
var err = create(_err);
assert.equal(err, _err);
assert.equal(err.name, 'Error');
assert.equal(err.message, 'Connection refused');
assert.equal(err.status, 500);
assert.equal(err.statusCode, 500);
Expand All@@ -136,8 +140,10 @@ describe('HTTP Errors', function () {
var err = create(_err, {
id: 1
});
assert.equal(err.name, 'Error');
assert.equal(err.message, 'LOL');
assert.equal(err.status, 404);
assert.equal(err.statusCode, 404);
assert.equal(err.id, 1);
assert.equal(err.expose, true);
})
Expand All@@ -148,9 +154,11 @@ describe('HTTP Errors', function () {
id: 1
});
assert.equal(err, _err);
assert.equal(err.name, 'Error');
assert.equal(err.message, 'LOL');
assert.equal(err.status, 404);
assert.equal(err.statusCode, 404);
assert.equal(err.id, 1);
})

it('create(status, msg, props)', function () {
Expand All@@ -161,18 +169,19 @@ describe('HTTP Errors', function () {
assert.equal(err.message, 'LOL');
assert.equal(err.status, 404);
assert.equal(err.statusCode, 404);
assert.equal(err.id, 1);
})

it('create(status, msg, { expose: false })', function () {
var err = create(404, 'LOL', {
expose: false
})
assert.equal(err.expose, false)
});
assert.equal(err.expose, false);
})

it('new create.NotFound()', function () {
var err = new create.NotFound();
assert.equal(err.name, 'NotFoundError')
assert.equal(err.name, 'NotFoundError');
assert.equal(err.message, 'Not Found');
assert.equal(err.status, 404);
assert.equal(err.statusCode, 404);
Expand All@@ -182,7 +191,7 @@ describe('HTTP Errors', function () {

it('new create.InternalServerError()', function () {
var err = new create.InternalServerError();
assert.equal(err.name, 'InternalServerError')
assert.equal(err.name, 'InternalServerError');
assert.equal(err.message, 'Internal Server Error');
assert.equal(err.status, 500);
assert.equal(err.statusCode, 500);
Expand All@@ -192,7 +201,7 @@ describe('HTTP Errors', function () {

it('new create["404"]()', function () {
var err = new create['404']();
assert.equal(err.name, 'NotFoundError')
assert.equal(err.name, 'NotFoundError');
assert.equal(err.message, 'Not Found');
assert.equal(err.status, 404);
assert.equal(err.statusCode, 404);
Expand All@@ -202,13 +211,13 @@ describe('HTTP Errors', function () {

it('should preserve error [[Class]]', function () {
var err = new create('LOL');
assert.equal(Object.prototype.toString.call(err), '[object Error]')
assert.equal(Object.prototype.toString.call(err), '[object Error]');

var err = new create[404]();
assert.equal(Object.prototype.toString.call(err), '[object Error]')
assert.equal(Object.prototype.toString.call(err), '[object Error]');

var err = new create[500]();
assert.equal(Object.prototype.toString.call(err), '[object Error]')
assert.equal(Object.prototype.toString.call(err), '[object Error]');
})

it('should support err instanceof Error', function () {
Expand Down