Ghost/ghost/errors/test/errors.test.js
Katharina Irrgang b4f398ec6a Tidy up unit test files (#9340)
refs #9178

- first iteration of tidying up the unit tests
- this is useful in the current stage, because if i move files in the server folder, i need a clean folder/file structure to detect which tests needs to move
- this is a simple cleanup to reflect the current server folder structure
2020-03-25 10:24:33 +00:00

71 lines
2.0 KiB
JavaScript

var should = require('should'), // jshint ignore:line
common = require('../../../../server/lib/common');
describe('Errors', function () {
it('Ensure we inherit from Error', function () {
var ghostError = new common.errors.GhostError();
(ghostError instanceof Error).should.eql(true);
});
describe('Inherite from other error', function () {
it('default', function () {
var someError = new Error(), ghostError;
someError.message = 'test';
someError.context = 'test';
someError.help = 'test';
ghostError = new common.errors.GhostError({err: someError});
ghostError.stack.should.match(/Error: test/);
ghostError.context.should.eql(someError.context);
ghostError.help.should.eql(someError.help);
});
it('has nested object', function () {
var someError = new Error(), ghostError;
someError.obj = {
a: 'b'
};
ghostError = new common.errors.GhostError({
err: someError
});
ghostError.obj.should.eql(someError.obj);
});
it('with custom attribute', function () {
var someError = new Error(), ghostError;
someError.context = 'test';
ghostError = new common.errors.GhostError({
err: someError,
context: 'context'
});
ghostError.context.should.eql('test');
});
it('with custom attribute', function () {
var someError = new Error(), ghostError;
ghostError = new common.errors.GhostError({
err: someError,
message: 'test'
});
ghostError.message.should.eql('test');
});
it('error is string', function () {
var ghostError = new common.errors.GhostError({
err: 'string'
});
ghostError.stack.should.match(/Error: string/);
});
});
});