UNPKG

base-domain

Version:

simple module to help build Domain-Driven Design

30 lines (17 loc) 744 B
Facade = require('../src/lib/facade') describe 'Facade', -> describe '@createInstance', -> it 'returns instance of Facade', -> f = Facade.createInstance() expect(f).to.be.instanceof Facade it 'returns instance of extended class', -> class ChildFacade extends Facade f = ChildFacade.createInstance() expect(f).to.be.instanceof Facade expect(f).to.be.instanceof ChildFacade describe 'error', -> it 'throw DomainError with reason', -> f = Facade.createInstance() err = f.error('notANumber') expect(err).to.have.property 'reason', 'notANumber' expect(f.isDomainError(err)).to.be.true