@Inject decorator for easily annotating dependency-injected class constructors

This commit is contained in:
alecmerdler 2017-01-21 02:56:29 -08:00
parent eea2a18c3f
commit edd7314624
5 changed files with 33 additions and 4 deletions

View file

@ -1,5 +1,6 @@
import { ViewArray } from './view-array';
import { ViewArrayImpl } from './view-array.impl';
import { Inject } from '../../decorators/inject/inject.decorator';
/**
@ -13,8 +14,7 @@ export class ViewArrayFactory {
* @param $interval Angular $interval service.
* @return viewArrayFactory A factory for creating ViewArray objects.
*/
static $inject = ['$interval'];
constructor(private $interval: ng.IIntervalService) {
constructor(@Inject('$interval') private $interval: ng.IIntervalService) {
}

View file

@ -6,13 +6,13 @@ describe("ViewArrayImplImpl", () => {
var $intervalMock: any;
var additionalCount: number;
beforeEach(inject(($injector: ng.auto.IInjectorService) => {
beforeEach(() => {
$intervalMock = jasmine.createSpy('$intervalSpy');
$intervalMock.and.returnValue({});
$intervalMock.cancel = jasmine.createSpy('cancelSpy');
additionalCount = 20;
viewArrayImpl = new ViewArrayImpl($intervalMock, additionalCount);
}));
});
describe("constructor", () => {