fix(core): return the ChangeDetectorRef of the component also for embedded views.
This commit is contained in:
@ -591,17 +591,21 @@ export function main() {
|
||||
fakeAsync(() => {
|
||||
var cf = createCompFixture(
|
||||
'<div componentNeedsChangeDetectorRef></div>',
|
||||
tcb.overrideTemplate(PushComponentNeedsChangeDetectorRef,
|
||||
'{{counter}}<div directiveNeedsChangeDetectorRef></div>'));
|
||||
tcb.overrideTemplate(
|
||||
PushComponentNeedsChangeDetectorRef,
|
||||
'{{counter}}<div directiveNeedsChangeDetectorRef></div><div *ngIf="true" directiveNeedsChangeDetectorRef></div>'));
|
||||
cf.detectChanges();
|
||||
var compEl = cf.debugElement.children[0];
|
||||
var comp = compEl.inject(PushComponentNeedsChangeDetectorRef);
|
||||
var comp: PushComponentNeedsChangeDetectorRef =
|
||||
compEl.inject(PushComponentNeedsChangeDetectorRef);
|
||||
comp.counter = 1;
|
||||
cf.detectChanges();
|
||||
expect(compEl.nativeElement).toHaveText('0');
|
||||
compEl.children[0]
|
||||
.inject(DirectiveNeedsChangeDetectorRef)
|
||||
.changeDetectorRef.markForCheck();
|
||||
expect(compEl.children[0].inject(DirectiveNeedsChangeDetectorRef).changeDetectorRef)
|
||||
.toBe(comp.changeDetectorRef);
|
||||
expect(compEl.children[1].inject(DirectiveNeedsChangeDetectorRef).changeDetectorRef)
|
||||
.toBe(comp.changeDetectorRef);
|
||||
comp.changeDetectorRef.markForCheck();
|
||||
cf.detectChanges();
|
||||
expect(compEl.nativeElement).toHaveText('1');
|
||||
}));
|
||||
|
Reference in New Issue
Block a user