
Every test now has an implicit module. It can be configured via `configureModule` (from @angular/core/testing) to add providers, directives, pipes, ... The compiler now has to be configured separately via `configureCompiler` (from @angular/core/testing) to add providers or define whether to use jit. BREAKING CHANGE: - Application providers can no longer inject compiler internals (i.e. everything from `@angular/compiler). Inject `Compiler` instead. This reflects the changes to `bootstrap` for module support (3f55aa609f60f130f1d69188ed057214b1267cb3). - Compiler providers can no longer be added via `addProviders` / `withProviders`. Use the new method `configureCompiler` instead. - Platform directives / pipes need to be provided via `configureModule` and can no longer be provided via the `PLATFORM_PIPES` / `PLATFORM_DIRECTIVES` tokens. - `setBaseTestProviders()` was renamed into `initTestEnvironment` and now takes a `PlatformRef` and a factory for a `Compiler`. - E.g. for the browser platform: BEFORE: ``` import {setBaseTestProviders} from ‘@angular/core/testing’; import {TEST_BROWSER_DYNAMIC_PLATFORM_PROVIDERS, TEST_BROWSER_DYNAMIC_APPLICATION_PROVIDERS} from ‘@angular/platform-browser-dynamic/testing’; setBaseTestProviders(TEST_BROWSER_DYNAMIC_PLATFORM_PROVIDERS, TEST_BROWSER_DYNAMIC_APPLICATION_PROVIDERS); ``` AFTER: ``` import {setBaseTestProviders} from ‘@angular/core/testing’; import {browserTestCompiler, browserDynamicTestPlatform, BrowserDynamicTestModule} from ‘@angular/platform-browser-dynamic/testing’; initTestEnvironment( browserTestCompiler, browserDynamicTestPlatform(), BrowserDynamicTestModule); ``` - E.g. for the server platform: BEFORE: ``` import {setBaseTestProviders} from ‘@angular/core/testing’; import {TEST_SERVER_PLATFORM_PROVIDERS, TEST_SERVER_APPLICATION_PROVIDERS} from ‘@angular/platform-server/testing/server’; setBaseTestProviders(TEST_SERVER_PLATFORM_PROVIDERS, TEST_SERVER_APPLICATION_PROVIDERS); ``` AFTER: ``` import {setBaseTestProviders} from ‘@angular/core/testing’; import {serverTestCompiler, serverTestPlatform, ServerTestModule} from ‘@angular/platform-browser-dynamic/testing’; initTestEnvironment( serverTestCompiler, serverTestPlatform(), ServerTestModule); ``` Related to #9726 Closes #9846
179 lines
5.0 KiB
TypeScript
179 lines
5.0 KiB
TypeScript
/** @stable */
|
|
export declare function addProviders(providers: Array<any>): void;
|
|
|
|
/** @deprecated */
|
|
export declare var afterEach: Function;
|
|
|
|
/** @stable */
|
|
export declare function async(fn: Function): (done: any) => any;
|
|
|
|
/** @deprecated */
|
|
export declare var beforeEach: any;
|
|
|
|
/** @deprecated */
|
|
export declare function beforeEachProviders(fn: () => Array<any>): void;
|
|
|
|
/** @stable */
|
|
export declare class ComponentFixture<T> {
|
|
changeDetectorRef: ChangeDetectorRef;
|
|
componentInstance: T;
|
|
componentRef: ComponentRef<T>;
|
|
debugElement: DebugElement;
|
|
elementRef: ElementRef;
|
|
nativeElement: any;
|
|
ngZone: NgZone;
|
|
constructor(componentRef: ComponentRef<T>, ngZone: NgZone, autoDetect: boolean);
|
|
autoDetectChanges(autoDetect?: boolean): void;
|
|
checkNoChanges(): void;
|
|
destroy(): void;
|
|
detectChanges(checkNoChanges?: boolean): void;
|
|
isStable(): boolean;
|
|
whenStable(): Promise<any>;
|
|
}
|
|
|
|
/** @experimental */
|
|
export declare var ComponentFixtureAutoDetect: OpaqueToken;
|
|
|
|
/** @experimental */
|
|
export declare var ComponentFixtureNoNgZone: OpaqueToken;
|
|
|
|
/** @stable */
|
|
export declare function configureCompiler(config: {
|
|
providers?: any[];
|
|
useJit?: boolean;
|
|
}): void;
|
|
|
|
/** @stable */
|
|
export declare function configureModule(moduleDef: {
|
|
providers?: any[];
|
|
directives?: any[];
|
|
pipes?: any[];
|
|
precompile?: any[];
|
|
modules?: any[];
|
|
}): void;
|
|
|
|
/** @deprecated */
|
|
export declare var ddescribe: any;
|
|
|
|
/** @deprecated */
|
|
export declare var describe: Function;
|
|
|
|
/** @experimental */
|
|
export declare function discardPeriodicTasks(): void;
|
|
|
|
/** @deprecated */
|
|
export declare var expect: Function;
|
|
|
|
/** @experimental */
|
|
export declare function fakeAsync(fn: Function): (...args: any[]) => any;
|
|
|
|
/** @deprecated */
|
|
export declare var fdescribe: any;
|
|
|
|
/** @deprecated */
|
|
export declare var fit: any;
|
|
|
|
/** @experimental */
|
|
export declare function flushMicrotasks(): void;
|
|
|
|
/** @experimental */
|
|
export declare function getTestInjector(): TestInjector;
|
|
|
|
/** @deprecated */
|
|
export declare var iit: any;
|
|
|
|
/** @experimental */
|
|
export declare function initTestEnvironment(compilerFactory: TestCompilerFactory, platform: PlatformRef, appModule: Type): void;
|
|
|
|
/** @stable */
|
|
export declare function inject(tokens: any[], fn: Function): () => any;
|
|
|
|
/** @experimental */
|
|
export declare class InjectSetupWrapper {
|
|
constructor(_moduleDef: () => {
|
|
providers?: any[];
|
|
directives?: any[];
|
|
pipes?: any[];
|
|
precompile?: any[];
|
|
modules?: any[];
|
|
});
|
|
inject(tokens: any[], fn: Function): () => any;
|
|
}
|
|
|
|
/** @deprecated */
|
|
export declare var it: any;
|
|
|
|
/** @experimental */
|
|
export declare function resetTestEnvironment(): void;
|
|
|
|
/** @experimental */
|
|
export declare type TestCompilerFactory = (config: {
|
|
providers?: Array<Type | Provider | any[]>;
|
|
useJit?: boolean;
|
|
}) => Compiler;
|
|
|
|
/** @stable */
|
|
export declare class TestComponentBuilder {
|
|
protected _injector: Injector;
|
|
constructor(_injector: Injector);
|
|
createAsync<T>(rootComponentType: ConcreteType<T>): Promise<ComponentFixture<T>>;
|
|
createFakeAsync<T>(rootComponentType: ConcreteType<T>): ComponentFixture<T>;
|
|
protected createFromFactory<C>(ngZone: NgZone, componentFactory: ComponentFactory<C>): ComponentFixture<C>;
|
|
createSync<T>(rootComponentType: ConcreteType<T>): ComponentFixture<T>;
|
|
overrideAnimations(componentType: Type, animations: AnimationEntryMetadata[]): TestComponentBuilder;
|
|
overrideDirective(componentType: Type, from: Type, to: Type): TestComponentBuilder;
|
|
overrideProviders(type: Type, providers: any[]): TestComponentBuilder;
|
|
overrideTemplate(componentType: Type, template: string): TestComponentBuilder;
|
|
overrideView(componentType: Type, view: ViewMetadata): TestComponentBuilder;
|
|
overrideViewProviders(type: Type, providers: any[]): TestComponentBuilder;
|
|
}
|
|
|
|
/** @experimental */
|
|
export declare class TestComponentRenderer {
|
|
insertRootElement(rootElementId: string): void;
|
|
}
|
|
|
|
/** @experimental */
|
|
export declare class TestInjector implements Injector {
|
|
appModule: Type;
|
|
compilerFactory: TestCompilerFactory;
|
|
platform: PlatformRef;
|
|
configureCompiler(config: {
|
|
providers?: any[];
|
|
useJit?: boolean;
|
|
}): void;
|
|
configureModule(moduleDef: {
|
|
providers?: any[];
|
|
directives?: any[];
|
|
pipes?: any[];
|
|
precompile?: any[];
|
|
modules?: any[];
|
|
}): void;
|
|
createInjectorAsync(): Promise<Injector>;
|
|
createInjectorSync(): Injector;
|
|
execute(tokens: any[], fn: Function): any;
|
|
get(token: any, notFoundValue?: any): any;
|
|
reset(): void;
|
|
}
|
|
|
|
/** @experimental */
|
|
export declare function tick(millis?: number): void;
|
|
|
|
/** @experimental */
|
|
export declare function withModule(moduleDef: () => {
|
|
providers?: any[];
|
|
directives?: any[];
|
|
pipes?: any[];
|
|
precompile?: any[];
|
|
modules?: any[];
|
|
}): InjectSetupWrapper;
|
|
|
|
/** @experimental */
|
|
export declare function withProviders(providers: () => any): InjectSetupWrapper;
|
|
|
|
/** @deprecated */
|
|
export declare var xdescribe: Function;
|
|
|
|
/** @deprecated */
|
|
export declare var xit: any;
|