fix(core/testing): clean up the core testing public API (#9466)
Previously, we were exporting internal mocks and helpers. Move these to core/testing/testing_internal or remove them if they were never used. Remove deprecated items - injectAsync, clearPendingTimers. BREAKING CHANGE: Remove the following APIs from `@angular/core/testing`, which have been deprecated or were never intended to be publicly exported: ``` injectAsync clearPendingTimers Log MockAppliacationHref MockNgZone clearPendingTimers getTypeOf instantiateType ``` Instead of `injectAsync`, use `async(inject())`. `clearPendingTimers` is no longer required.
This commit is contained in:
@ -24,6 +24,11 @@
|
||||
export function async(fn: Function): Function {
|
||||
return () => new Promise<void>((finishCallback, failCallback) => {
|
||||
var AsyncTestZoneSpec = (Zone as any /** TODO #9100 */)['AsyncTestZoneSpec'];
|
||||
if (AsyncTestZoneSpec === undefined) {
|
||||
throw new Error(
|
||||
'AsyncTestZoneSpec is needed for the async() test helper but could not be found. ' +
|
||||
'Please make sure that your environment includes zone.js/dist/async-test.js');
|
||||
}
|
||||
var testZoneSpec = new AsyncTestZoneSpec(finishCallback, failCallback, 'test');
|
||||
var testZone = Zone.current.fork(testZoneSpec);
|
||||
return testZone.run(fn);
|
||||
|
Reference in New Issue
Block a user