UNPKG

domain-objects

Version:

A simple, convenient way to represent domain objects, leverage domain knowledge, and add runtime validation in your code base.

30 lines 1.16 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const DomainLiteral_1 = require("./DomainLiteral"); describe('DomainLiteral', () => { it('should be able to represent a literal', () => { class Address extends DomainLiteral_1.DomainLiteral { } const address = new Address({ street: '123 Elm Street', city: 'Austin', state: 'TX', postal: '78704', }); expect(address.city).toEqual('Austin'); // sanity check }); it('should be spreadable', () => { class Address extends DomainLiteral_1.DomainLiteral { } const address = new Address({ street: '123 Elm Street', city: 'Austin', state: 'TX', postal: '78704', }); const differentAddress = new Address(Object.assign(Object.assign({}, address), { street: '456 Bluebonnet Ave' })); expect(differentAddress.city).toEqual('Austin'); // sanity check expect(differentAddress.street).toEqual('456 Bluebonnet Ave'); // sanity check }); }); //# sourceMappingURL=DomainLiteral.test.js.map