Skip to content

Commit

Permalink
fix(core): change defer block fixture default behavior to playthrough (
Browse files Browse the repository at this point in the history
…#54088)

This is a followup to #53956

The default behavior needs to be changed in `TestBedCompiler` as well to have an effect.

PR Close #54088
  • Loading branch information
cexbrayat authored and thePunderWoman committed Jan 26, 2024
1 parent ecd0daf commit c477e87
Show file tree
Hide file tree
Showing 5 changed files with 13 additions and 39 deletions.
37 changes: 5 additions & 32 deletions packages/core/test/acceptance/defer_spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -131,7 +131,6 @@ function createFixture(template: string) {
...COMMON_PROVIDERS,
{provide: ɵDEFER_BLOCK_DEPENDENCY_INTERCEPTOR, useValue: deferDepsInterceptor},
],
deferBlockBehavior: DeferBlockBehavior.Playthrough,
});

clearDirectiveDefs(MyCmp);
Expand Down Expand Up @@ -160,8 +159,7 @@ const COMMON_PROVIDERS = [{provide: PLATFORM_ID, useValue: PLATFORM_BROWSER_ID}]

describe('@defer', () => {
beforeEach(() => {
TestBed.configureTestingModule(
{providers: COMMON_PROVIDERS, deferBlockBehavior: DeferBlockBehavior.Playthrough});
TestBed.configureTestingModule({providers: COMMON_PROVIDERS});
});

it('should transition between placeholder, loading and loaded states', async () => {
Expand Down Expand Up @@ -558,7 +556,6 @@ describe('@defer', () => {
...COMMON_PROVIDERS,
{provide: ɵDEFER_BLOCK_DEPENDENCY_INTERCEPTOR, useValue: deferDepsInterceptor},
],
deferBlockBehavior: DeferBlockBehavior.Playthrough,
});

clearDirectiveDefs(RootCmp);
Expand Down Expand Up @@ -837,7 +834,6 @@ describe('@defer', () => {
providers: [
{provide: ɵDEFER_BLOCK_DEPENDENCY_INTERCEPTOR, useValue: deferDepsInterceptor},
],
deferBlockBehavior: DeferBlockBehavior.Playthrough,
});

const fixture = TestBed.createComponent(MyCmp);
Expand Down Expand Up @@ -912,7 +908,6 @@ describe('@defer', () => {
},
},
],
deferBlockBehavior: DeferBlockBehavior.Playthrough,
});

const fixture = TestBed.createComponent(MyCmp);
Expand Down Expand Up @@ -988,7 +983,6 @@ describe('@defer', () => {
},
},
],
deferBlockBehavior: DeferBlockBehavior.Playthrough,
});

const fixture = TestBed.createComponent(MyCmp);
Expand Down Expand Up @@ -1308,7 +1302,6 @@ describe('@defer', () => {
providers: [
{provide: ɵDEFER_BLOCK_DEPENDENCY_INTERCEPTOR, useValue: deferDepsInterceptor},
],
deferBlockBehavior: DeferBlockBehavior.Playthrough,
});

const fixture = TestBed.createComponent(RootCmp);
Expand Down Expand Up @@ -1429,7 +1422,6 @@ describe('@defer', () => {
providers: [
{provide: ɵDEFER_BLOCK_DEPENDENCY_INTERCEPTOR, useValue: deferDepsInterceptor},
],
deferBlockBehavior: DeferBlockBehavior.Playthrough,
});

clearDirectiveDefs(RootCmp);
Expand Down Expand Up @@ -1515,7 +1507,6 @@ describe('@defer', () => {
providers: [
{provide: ɵDEFER_BLOCK_DEPENDENCY_INTERCEPTOR, useValue: deferDepsInterceptor},
],
deferBlockBehavior: DeferBlockBehavior.Playthrough,
});

clearDirectiveDefs(RootCmp);
Expand Down Expand Up @@ -1597,7 +1588,6 @@ describe('@defer', () => {
providers: [
{provide: ɵDEFER_BLOCK_DEPENDENCY_INTERCEPTOR, useValue: deferDepsInterceptor},
],
deferBlockBehavior: DeferBlockBehavior.Playthrough,
});

clearDirectiveDefs(RootCmp);
Expand Down Expand Up @@ -1666,7 +1656,6 @@ describe('@defer', () => {
providers: [
{provide: ɵDEFER_BLOCK_DEPENDENCY_INTERCEPTOR, useValue: deferDepsInterceptor},
],
deferBlockBehavior: DeferBlockBehavior.Playthrough,
});

clearDirectiveDefs(RootCmp);
Expand Down Expand Up @@ -1749,7 +1738,6 @@ describe('@defer', () => {
providers: [
{provide: ɵDEFER_BLOCK_DEPENDENCY_INTERCEPTOR, useValue: deferDepsInterceptor},
],
deferBlockBehavior: DeferBlockBehavior.Playthrough,
});

clearDirectiveDefs(RootCmp);
Expand Down Expand Up @@ -1832,7 +1820,6 @@ describe('@defer', () => {
providers: [
{provide: ɵDEFER_BLOCK_DEPENDENCY_INTERCEPTOR, useValue: deferDepsInterceptor},
],
deferBlockBehavior: DeferBlockBehavior.Playthrough,
});

clearDirectiveDefs(RootCmp);
Expand Down Expand Up @@ -1904,7 +1891,6 @@ describe('@defer', () => {
...COMMON_PROVIDERS,
{provide: ɵDEFER_BLOCK_DEPENDENCY_INTERCEPTOR, useValue: deferDepsInterceptor},
],
deferBlockBehavior: DeferBlockBehavior.Playthrough,
});

clearDirectiveDefs(RootCmp);
Expand Down Expand Up @@ -2005,7 +1991,6 @@ describe('@defer', () => {
providers: [
{provide: ɵDEFER_BLOCK_DEPENDENCY_INTERCEPTOR, useValue: deferDepsInterceptor},
],
deferBlockBehavior: DeferBlockBehavior.Playthrough,
});

clearDirectiveDefs(RootCmp);
Expand Down Expand Up @@ -2088,7 +2073,6 @@ describe('@defer', () => {
providers: [
{provide: ɵDEFER_BLOCK_DEPENDENCY_INTERCEPTOR, useValue: deferDepsInterceptor},
],
deferBlockBehavior: DeferBlockBehavior.Playthrough,
});

clearDirectiveDefs(RootCmp);
Expand Down Expand Up @@ -2181,7 +2165,6 @@ describe('@defer', () => {
providers: [
{provide: ɵDEFER_BLOCK_DEPENDENCY_INTERCEPTOR, useValue: deferDepsInterceptor},
],
deferBlockBehavior: DeferBlockBehavior.Playthrough,
});

clearDirectiveDefs(RootCmp);
Expand Down Expand Up @@ -2236,7 +2219,7 @@ describe('@defer', () => {
isVisible = false;
}

TestBed.configureTestingModule({deferBlockBehavior: DeferBlockBehavior.Playthrough});
TestBed.configureTestingModule({});

clearDirectiveDefs(RootCmp);

Expand Down Expand Up @@ -2735,7 +2718,7 @@ describe('@defer', () => {
})
class MyCmp {
}
TestBed.configureTestingModule({deferBlockBehavior: DeferBlockBehavior.Playthrough});
TestBed.configureTestingModule({});

const appRef = TestBed.inject(ApplicationRef);
const zone = TestBed.inject(NgZone);
Expand Down Expand Up @@ -2782,7 +2765,6 @@ describe('@defer', () => {
}
},
],
deferBlockBehavior: DeferBlockBehavior.Playthrough,
});

clearDirectiveDefs(MyCmp);
Expand Down Expand Up @@ -2831,7 +2813,6 @@ describe('@defer', () => {
}
},
],
deferBlockBehavior: DeferBlockBehavior.Playthrough,
});

clearDirectiveDefs(MyCmp);
Expand Down Expand Up @@ -3090,7 +3071,6 @@ describe('@defer', () => {
}
},
],
deferBlockBehavior: DeferBlockBehavior.Playthrough,
});

clearDirectiveDefs(MyCmp);
Expand Down Expand Up @@ -3145,7 +3125,6 @@ describe('@defer', () => {
}
},
],
deferBlockBehavior: DeferBlockBehavior.Playthrough,
});

clearDirectiveDefs(MyCmp);
Expand Down Expand Up @@ -3207,7 +3186,6 @@ describe('@defer', () => {
providers: [
{provide: ɵDEFER_BLOCK_DEPENDENCY_INTERCEPTOR, useValue: deferDepsInterceptor},
],
deferBlockBehavior: DeferBlockBehavior.Playthrough,
});

clearDirectiveDefs(RootCmp);
Expand Down Expand Up @@ -3266,9 +3244,7 @@ describe('@defer', () => {
class RootCmp {
}

TestBed.configureTestingModule({
deferBlockBehavior: DeferBlockBehavior.Playthrough,
});
TestBed.configureTestingModule({});

clearDirectiveDefs(RootCmp);

Expand Down Expand Up @@ -3337,7 +3313,6 @@ describe('@defer', () => {
providers: [
{provide: ɵDEFER_BLOCK_DEPENDENCY_INTERCEPTOR, useValue: deferDepsInterceptor},
],
deferBlockBehavior: DeferBlockBehavior.Playthrough,
});

clearDirectiveDefs(RootCmp);
Expand Down Expand Up @@ -3406,7 +3381,7 @@ describe('@defer', () => {
isVisible = false;
}

TestBed.configureTestingModule({deferBlockBehavior: DeferBlockBehavior.Playthrough});
TestBed.configureTestingModule({});

clearDirectiveDefs(RootCmp);

Expand Down Expand Up @@ -3807,7 +3782,6 @@ describe('@defer', () => {
}
},
],
deferBlockBehavior: DeferBlockBehavior.Playthrough,
});

clearDirectiveDefs(MyCmp);
Expand Down Expand Up @@ -3857,7 +3831,6 @@ describe('@defer', () => {
}
},
],
deferBlockBehavior: DeferBlockBehavior.Playthrough,
});

clearDirectiveDefs(MyCmp);
Expand Down
2 changes: 1 addition & 1 deletion packages/core/test/defer_fixture_spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,6 @@ describe('DeferFixture', () => {
SecondDeferredComp,
],
providers: COMMON_PROVIDERS,
deferBlockBehavior: DeferBlockBehavior.Playthrough,
});

const componentFixture = TestBed.createComponent(DeferComp);
Expand Down Expand Up @@ -144,6 +143,7 @@ describe('DeferFixture', () => {
SecondDeferredComp,
],
providers: COMMON_PROVIDERS,
deferBlockBehavior: DeferBlockBehavior.Manual,
});

const componentFixture = TestBed.createComponent(DeferComp);
Expand Down
4 changes: 1 addition & 3 deletions packages/core/testing/src/test_bed.ts
Original file line number Diff line number Diff line change
Expand Up @@ -47,11 +47,9 @@ import {

import {ComponentFixture} from './component_fixture';
import {MetadataOverride} from './metadata_override';
import {ComponentFixtureAutoDetect, ComponentFixtureNoNgZone, ModuleTeardownOptions, TEARDOWN_TESTING_MODULE_ON_DESTROY_DEFAULT, TestComponentRenderer, TestEnvironmentOptions, TestModuleMetadata, THROW_ON_UNKNOWN_ELEMENTS_DEFAULT, THROW_ON_UNKNOWN_PROPERTIES_DEFAULT} from './test_bed_common';
import {ComponentFixtureNoNgZone, DEFER_BLOCK_DEFAULT_BEHAVIOR, ModuleTeardownOptions, TEARDOWN_TESTING_MODULE_ON_DESTROY_DEFAULT, TestComponentRenderer, TestEnvironmentOptions, TestModuleMetadata, THROW_ON_UNKNOWN_ELEMENTS_DEFAULT, THROW_ON_UNKNOWN_PROPERTIES_DEFAULT} from './test_bed_common';
import {TestBedCompiler} from './test_bed_compiler';

const DEFER_BLOCK_DEFAULT_BEHAVIOR = DeferBlockBehavior.Playthrough;

/**
* Static methods implemented by the `TestBed`.
*
Expand Down
3 changes: 3 additions & 0 deletions packages/core/testing/src/test_bed_common.ts
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,9 @@ export const THROW_ON_UNKNOWN_ELEMENTS_DEFAULT = false;
/** Whether unknown properties in templates should throw by default. */
export const THROW_ON_UNKNOWN_PROPERTIES_DEFAULT = false;

/** Whether defer blocks should use manual triggering or play through normally. */
export const DEFER_BLOCK_DEFAULT_BEHAVIOR = DeferBlockBehavior.Playthrough;

/**
* An abstract class for inserting the root test component element in a platform independent way.
*
Expand Down
6 changes: 3 additions & 3 deletions packages/core/testing/src/test_bed_compiler.ts
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ import {ComponentDef, ComponentType} from '../../src/render3';

import {MetadataOverride} from './metadata_override';
import {ComponentResolver, DirectiveResolver, NgModuleResolver, PipeResolver, Resolver} from './resolvers';
import {TestModuleMetadata} from './test_bed_common';
import {DEFER_BLOCK_DEFAULT_BEHAVIOR, TestModuleMetadata} from './test_bed_common';

enum TestingModuleOverride {
DECLARATION,
Expand Down Expand Up @@ -112,7 +112,7 @@ export class TestBedCompiler {
private testModuleType: NgModuleType<any>;
private testModuleRef: NgModuleRef<any>|null = null;

private deferBlockBehavior = DeferBlockBehavior.Manual;
private deferBlockBehavior = DEFER_BLOCK_DEFAULT_BEHAVIOR;

constructor(private platform: PlatformRef, private additionalModuleTypes: Type<any>|Type<any>[]) {
class DynamicTestModule {}
Expand Down Expand Up @@ -149,7 +149,7 @@ export class TestBedCompiler {
this.schemas.push(...moduleDef.schemas);
}

this.deferBlockBehavior = moduleDef.deferBlockBehavior ?? DeferBlockBehavior.Manual;
this.deferBlockBehavior = moduleDef.deferBlockBehavior ?? DEFER_BLOCK_DEFAULT_BEHAVIOR;
}

overrideModule(ngModule: Type<any>, override: MetadataOverride<NgModule>): void {
Expand Down

0 comments on commit c477e87

Please sign in to comment.