test(ivy): add compiler.getModuleId support in R3TestBed (#28097)
This update brings `getModuleId` function support to R3TestBed-specific Compiler instance. PR Close #28097
This commit is contained in:
		
							parent
							
								
									9a81f0d9a8
								
							
						
					
					
						commit
						da1d19b40f
					
				| @ -634,6 +634,11 @@ export class TestBedRender3 implements Injector, TestBed { | ||||
|     return Object.keys(overrides).length ? {...meta, ...overrides} : meta; | ||||
|   } | ||||
| 
 | ||||
|   /** | ||||
|    * @internal | ||||
|    */ | ||||
|   _getModuleResolver() { return this._resolvers.module; } | ||||
| 
 | ||||
|   /** | ||||
|    * @internal | ||||
|    */ | ||||
| @ -764,5 +769,8 @@ class R3TestCompiler implements Compiler { | ||||
| 
 | ||||
|   clearCacheFor(type: Type<any>): void {} | ||||
| 
 | ||||
|   getModuleId(moduleType: Type<any>): string|undefined { return undefined; } | ||||
|   getModuleId(moduleType: Type<any>): string|undefined { | ||||
|     const meta = this.testBed._getModuleResolver().resolve(moduleType); | ||||
|     return meta && meta.id || undefined; | ||||
|   } | ||||
| } | ||||
|  | ||||
| @ -80,8 +80,7 @@ if (isBrowser) { | ||||
|     }); | ||||
| 
 | ||||
|     describe('Compiler', () => { | ||||
|       fixmeIvy('FW-855: TestBed.get(Compiler) should return TestBed-specific Compiler instance') | ||||
|           .it('should return NgModule id when asked', () => { | ||||
|       it('should return NgModule id when asked', () => { | ||||
|         @NgModule({ | ||||
|           id: 'test-module', | ||||
|         }) | ||||
|  | ||||
| @ -457,8 +457,7 @@ class CompWithUrlTemplate { | ||||
|             expect(TestBed.get('a')).toBe('mockA: depValue'); | ||||
|           }); | ||||
| 
 | ||||
|           fixmeIvy('FW-855: TestBed.get(Compiler) should return TestBed-specific Compiler instance') | ||||
|               .it('should support SkipSelf', () => { | ||||
|           it('should support SkipSelf', () => { | ||||
|             @NgModule({ | ||||
|               providers: [ | ||||
|                 {provide: 'a', useValue: 'aValue'}, | ||||
| @ -469,15 +468,13 @@ class CompWithUrlTemplate { | ||||
|             } | ||||
| 
 | ||||
|             TestBed.overrideProvider( | ||||
|                     'a', | ||||
|                     {useFactory: (dep: any) => `mockA: ${dep}`, deps: [[new SkipSelf(), 'dep']]}); | ||||
|                 'a', {useFactory: (dep: any) => `mockA: ${dep}`, deps: [[new SkipSelf(), 'dep']]}); | ||||
|             TestBed.configureTestingModule( | ||||
|                 {providers: [{provide: 'dep', useValue: 'parentDepValue'}]}); | ||||
| 
 | ||||
|             const compiler = TestBed.get(Compiler) as Compiler; | ||||
|             const modFactory = compiler.compileModuleSync(MyModule); | ||||
|                 expect(modFactory.create(getTestBed()).injector.get('a')) | ||||
|                     .toBe('mockA: parentDepValue'); | ||||
|             expect(modFactory.create(getTestBed()).injector.get('a')).toBe('mockA: parentDepValue'); | ||||
|           }); | ||||
| 
 | ||||
|           it('should keep imported NgModules eager', () => { | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user