UNPKG

ddd-tool-kit

Version:

A development tool kit for using Domain Driven Design in your Web API Node.js

35 lines (34 loc) 1.6 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const id_errors_1 = require("./id.errors"); const id_value_object_1 = require("./id.value-object"); describe('id.value-object.spec', () => { it('should be defined random ID', () => { const valueObject = id_value_object_1.IdValueObject.getDefault(); expect(valueObject.value).toHaveLength(16); }); it('should be defined value for ID', () => { const value = '1234567890123456'; const valueObject = id_value_object_1.IdValueObject.init({ value }).result; expect(valueObject.value).toEqual(value); }); it('should be fail if id is not valid', () => { const value = '321'; const initId = id_value_object_1.IdValueObject.init({ value }); expect(initId.isFailure).toBeTruthy(); expect(initId.result).toEqual(id_errors_1.INVALID_ID); }); it('should be truthy equal ids', () => { const valueObject1 = id_value_object_1.IdValueObject.getDefault(); const valueObject2 = id_value_object_1.IdValueObject.init({ value: valueObject1.value }) .result; const isEqualValueObject = valueObject1.equals(valueObject2); expect(isEqualValueObject).toBeTruthy(); }); it('should be falsy equal ids', () => { const valueObject1 = id_value_object_1.IdValueObject.getDefault(); const valueObject2 = id_value_object_1.IdValueObject.getDefault(); const isNotEqualValueObject = valueObject1.equals(valueObject2); expect(isNotEqualValueObject).toBeFalsy(); }); });