ddd-tool-kit
Version:
A development tool kit for using Domain Driven Design in your Web API Node.js
55 lines (54 loc) • 2.29 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const http_status_enum_1 = require("../enums/http-status.enum");
const output_util_1 = require("./output.util");
describe('output.util.spec', () => {
it('should be defined as success void', () => {
const util = output_util_1.Output.success();
expect(util).toBeInstanceOf(output_util_1.Output);
expect(util.result).toBeUndefined();
expect(util.isFailure).toBeFalsy();
expect(util.isSuccess).toBeTruthy();
});
it('should be defined as success boolean', () => {
const util = output_util_1.Output.success(true);
expect(util).toBeInstanceOf(output_util_1.Output);
expect(util.result).toBe(true);
expect(util.isFailure).toBeFalsy();
expect(util.isSuccess).toBeTruthy();
});
it('should be defined as success number', () => {
const util = output_util_1.Output.success(10);
expect(util).toBeInstanceOf(output_util_1.Output);
expect(util.result).toBe(10);
expect(util.isFailure).toBeFalsy();
expect(util.isSuccess).toBeTruthy();
});
it('should be defined as success string', () => {
const util = output_util_1.Output.success('Test');
expect(util).toBeInstanceOf(output_util_1.Output);
expect(util.result).toBe('Test');
expect(util.isFailure).toBeFalsy();
expect(util.isSuccess).toBeTruthy();
});
it('should be defined as success Object', () => {
const util = output_util_1.Output.success({});
expect(util).toBeInstanceOf(output_util_1.Output);
expect(util.result).toEqual({});
expect(util.isFailure).toBeFalsy();
expect(util.isSuccess).toBeTruthy();
});
it('should be defined as fail erro-message', () => {
const util = output_util_1.Output.fail({
message: 'invalid',
statusCode: http_status_enum_1.HttpStatus.BAD_REQUEST,
});
expect(util).toBeInstanceOf(output_util_1.Output);
expect(util.isFailure).toBeTruthy();
expect(util.isSuccess).toBeFalsy();
expect(util.result).toEqual({
message: 'invalid',
statusCode: http_status_enum_1.HttpStatus.BAD_REQUEST,
});
});
});