X Tutup
Skip to content

Commit 35e32bb

Browse files
Tim Blasijelbourn
authored andcommitted
feat(mocks): Mark mock objects @Injectable()
Make mock objects `@Injectable()` to allow using them in compiled tests. Closes #5576
1 parent e9f873a commit 35e32bb

File tree

8 files changed

+17
-1
lines changed

8 files changed

+17
-1
lines changed

modules/angular2/src/mock/directive_resolver_mock.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
1+
import {Injectable} from 'angular2/src/core/di';
12
import {Map, MapWrapper, ListWrapper} from 'angular2/src/facade/collection';
23
import {Type, isPresent, stringify, isBlank, print} from 'angular2/src/facade/lang';
34
import {DirectiveMetadata, ComponentMetadata} from '../core/metadata';
45
import {DirectiveResolver} from 'angular2/src/core/linker/directive_resolver';
56

7+
@Injectable()
68
export class MockDirectiveResolver extends DirectiveResolver {
79
private _providerOverrides = new Map<Type, any[]>();
810
private viewProviderOverrides = new Map<Type, any[]>();

modules/angular2/src/mock/location_mock.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
1+
import {Injectable} from 'angular2/src/core/di';
12
import {EventEmitter, ObservableWrapper} from 'angular2/src/facade/async';
23
import {ListWrapper} from 'angular2/src/facade/collection';
34
import {Location} from 'angular2/src/router/location';
45

6+
@Injectable()
57
export class SpyLocation implements Location {
68
urlChanges: string[] = [];
79
/** @internal */

modules/angular2/src/mock/mock_application_ref.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
11
import {ApplicationRef} from 'angular2/src/core/application_ref';
2+
import {Injectable} from 'angular2/src/core/di';
23
import {Type} from 'angular2/src/facade/lang';
34
import {ComponentRef} from 'angular2/src/core/linker/dynamic_component_loader';
45
import {Provider, Injector} from 'angular2/src/core/di';
56
import {NgZone} from 'angular2/src/core/zone/ng_zone';
67
import {Promise} from 'angular2/src/facade/async';
78

9+
@Injectable()
810
export class MockApplicationRef extends ApplicationRef {
911
registerBootstrapListener(listener: (ref: ComponentRef) => void): void {}
1012

@@ -23,4 +25,4 @@ export class MockApplicationRef extends ApplicationRef {
2325
tick(): void {}
2426

2527
get componentTypes(): Type[] { return null; };
26-
}
28+
}

modules/angular2/src/mock/mock_location_strategy.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
1+
import {Injectable} from 'angular2/src/core/di';
12
import {EventEmitter, ObservableWrapper} from 'angular2/src/facade/async';
23
import {LocationStrategy} from 'angular2/src/router/location_strategy';
34

45

6+
@Injectable()
57
export class MockLocationStrategy extends LocationStrategy {
68
internalBaseHref: string = '/';
79
internalPath: string = '/';

modules/angular2/src/mock/ng_zone_mock.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
1+
import {Injectable} from 'angular2/src/core/di';
12
import {NgZone} from 'angular2/src/core/zone/ng_zone';
23
import {EventEmitter, ObservableWrapper} from 'angular2/src/facade/async';
34

5+
@Injectable()
46
export class MockNgZone extends NgZone {
57
/** @internal */
68
_mockOnEventDone: EventEmitter<any>;

modules/angular2/src/mock/view_resolver_mock.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
1+
import {Injectable} from 'angular2/src/core/di';
12
import {Map, MapWrapper, ListWrapper} from 'angular2/src/facade/collection';
23
import {Type, isPresent, stringify, isBlank} from 'angular2/src/facade/lang';
34
import {BaseException, WrappedException} from 'angular2/src/facade/exceptions';
45

56
import {ViewMetadata} from '../core/metadata';
67
import {ViewResolver} from 'angular2/src/core/linker/view_resolver';
78

9+
@Injectable()
810
export class MockViewResolver extends ViewResolver {
911
/** @internal */
1012
_views = new Map<Type, ViewMetadata>();

modules/angular2/src/testing/utils.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
1+
import {Injectable} from 'angular2/src/core/di';
12
import {ListWrapper, MapWrapper} from 'angular2/src/facade/collection';
23
import {DOM} from 'angular2/src/platform/dom/dom_adapter';
34
import {isPresent, isString, RegExpWrapper, StringWrapper, RegExp} from 'angular2/src/facade/lang';
45

6+
@Injectable()
57
export class Log {
68
/** @internal */
79
_result: any[];

modules/angular2/test/core/testability/testability_spec.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import {Injectable} from 'angular2/src/core/di';
12
import {
23
AsyncTestCompleter,
34
inject,
@@ -21,6 +22,7 @@ function microTask(fn: Function): void {
2122
PromiseWrapper.resolve(null).then((_) => { fn(); });
2223
}
2324

25+
@Injectable()
2426
class MockNgZone extends NgZone {
2527
_onTurnStartStream: EventEmitter<any>;
2628
get onTurnStart() { return this._onTurnStartStream; }

0 commit comments

Comments
 (0)
X Tutup