diff --git a/packages/compiler-cli/src/ngtsc/testing/fake_common/index.ts b/packages/compiler-cli/src/ngtsc/testing/fake_common/index.ts index c32be348b14..da99030fb72 100644 --- a/packages/compiler-cli/src/ngtsc/testing/fake_common/index.ts +++ b/packages/compiler-cli/src/ngtsc/testing/fake_common/index.ts @@ -56,6 +56,7 @@ export declare class NgIf { 'ngIfElse': 'ngIfElse'; } , {}, never > ; + static ngTemplateGuard_ngIf: 'binding'; static ngTemplateContextGuard(dir: NgIf, ctx: any): ctx is NgIfContext>; } @@ -83,8 +84,16 @@ export declare class DatePipe { static ɵpipe: ɵɵPipeDeclaration; } +export declare class IndexPipe { + transform(value: T[], index: number): T; + + static ɵpipe: ɵɵPipeDeclaration; +} + export declare class CommonModule { static ɵmod: ɵɵNgModuleDeclaration< - CommonModule, [typeof NgForOf, typeof NgIf, typeof DatePipe, typeof NgTemplateOutlet], never, - [typeof NgForOf, typeof NgIf, typeof DatePipe, typeof NgTemplateOutlet]>; + CommonModule, + [typeof NgForOf, typeof NgIf, typeof DatePipe, typeof IndexPipe, typeof NgTemplateOutlet], + never, + [typeof NgForOf, typeof NgIf, typeof DatePipe, typeof IndexPipe, typeof NgTemplateOutlet]>; } diff --git a/packages/compiler-cli/test/ngtsc/BUILD.bazel b/packages/compiler-cli/test/ngtsc/BUILD.bazel index b9c68a775d6..328c699f6b5 100644 --- a/packages/compiler-cli/test/ngtsc/BUILD.bazel +++ b/packages/compiler-cli/test/ngtsc/BUILD.bazel @@ -26,6 +26,7 @@ jasmine_node_test( timeout = "long", bootstrap = ["//tools/testing:node_no_angular_es5"], data = [ + "//packages/compiler-cli/src/ngtsc/testing/fake_common:npm_package", "//packages/compiler-cli/src/ngtsc/testing/fake_core:npm_package", ], shard_count = 4, diff --git a/packages/compiler-cli/test/ngtsc/template_typecheck_spec.ts b/packages/compiler-cli/test/ngtsc/template_typecheck_spec.ts index 83306ea997e..ce9bc109247 100644 --- a/packages/compiler-cli/test/ngtsc/template_typecheck_spec.ts +++ b/packages/compiler-cli/test/ngtsc/template_typecheck_spec.ts @@ -15,7 +15,7 @@ import {expectCompleteReuse, loadStandardTestFiles} from '../../src/ngtsc/testin import {NgtscTestEnvironment} from './env'; -const testFiles = loadStandardTestFiles(); +const testFiles = loadStandardTestFiles({fakeCore: true, fakeCommon: true}); runInEachFileSystem(() => { describe('ngtsc type checking', () => { @@ -24,66 +24,6 @@ runInEachFileSystem(() => { beforeEach(() => { env = NgtscTestEnvironment.setup(testFiles); env.tsconfig({fullTemplateTypeCheck: true}); - env.write('node_modules/@angular/common/index.d.ts', ` -import * as i0 from '@angular/core'; - -export declare class NgForOfContext = i0.NgIterable> { - $implicit: T; - count: number; - readonly even: boolean; - readonly first: boolean; - index: number; - readonly last: boolean; - ngForOf: U; - readonly odd: boolean; - constructor($implicit: T, ngForOf: U, index: number, count: number); -} - -export declare class IndexPipe { - transform(value: T[], index: number): T; - - static ɵpipe: i0.ɵPipeDeclaration; -} - -export declare class SlicePipe { - transform(value: ReadonlyArray, start: number, end?: number): Array; - transform(value: string, start: number, end?: number): string; - transform(value: null, start: number, end?: number): null; - transform(value: undefined, start: number, end?: number): undefined; - transform(value: any, start: number, end?: number): any; - - static ɵpipe: i0.ɵPipeDeclaration; -} - -export declare class NgForOf = i0.NgIterable> implements DoCheck { - ngForOf: (U & i0.NgIterable) | undefined | null; - ngForTemplate: TemplateRef>; - ngForTrackBy: TrackByFunction; - constructor(_viewContainer: ViewContainerRef, _template: TemplateRef>, _differs: IterableDiffers); - ngDoCheck(): void; - static ngTemplateContextGuard>(dir: NgForOf, ctx: any): ctx is NgForOfContext; - static ɵdir: i0.ɵɵDirectiveDeclaration, '[ngFor][ngForOf]', never, {'ngForOf': 'ngForOf'}, {}, never>; -} - -export declare class NgIf { - ngIf: T; - ngIfElse: TemplateRef> | null; - ngIfThen: TemplateRef> | null; - constructor(_viewContainer: ViewContainerRef, templateRef: TemplateRef>); - static ngTemplateGuard_ngIf: 'binding'; - static ngTemplateContextGuard(dir: NgIf, ctx: any): ctx is NgIfContext>; - static ɵdir: i0.ɵɵDirectiveDeclaration, '[ngIf]', never, {'ngIf': 'ngIf'}, {}, never>; -} - -export declare class NgIfContext { - $implicit: T; - ngIf: T; -} - -export declare class CommonModule { - static ɵmod: i0.ɵɵNgModuleDeclaration; -} -`); env.write('node_modules/@angular/animations/index.d.ts', ` export declare class AnimationEvent { element: any;