UNPKG

miter

Version:

A typescript web framework based on ExpressJs based loosely on SailsJs

37 lines 1.65 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const chai_1 = require("chai"); const sinon = require("sinon"); const sinonChai = require("sinon-chai"); chai_1.use(sinonChai); const orm_service_1 = require("../orm.service"); const injector_1 = require("../../core/injector"); const logger_core_1 = require("../logger-core"); describe('ORMService', () => { let injector; let loggerCore; beforeEach(() => { loggerCore = new logger_core_1.LoggerCore('test', 'error', false); injector = new injector_1.Injector(loggerCore); }); describe('when no implementation has been provided to the injector', () => { it('should resolve to null', () => { let instance = injector.resolveInjectable(orm_service_1.ORMService); chai_1.expect(instance).to.be.null; }); it('should log an error using the "ORMService" logger', () => { let myLogger = loggerCore.getSubsystem('ORMService'); sinon.stub(myLogger, 'error'); injector.resolveInjectable(orm_service_1.ORMService); chai_1.expect(myLogger.error).to.have.been.calledOnce; }); it('should only log an error once, even if it is resolved multiple times', () => { let myLogger = loggerCore.getSubsystem('ORMService'); sinon.stub(myLogger, 'error'); injector.resolveInjectable(orm_service_1.ORMService); injector.resolveInjectable(orm_service_1.ORMService); chai_1.expect(myLogger.error).to.have.been.calledOnce; }); }); }); //# sourceMappingURL=orm.service.spec.js.map