diff --git a/packages/core/test/linker/integration_spec.ts b/packages/core/test/linker/integration_spec.ts
index cc0075f7c5..8cec47ee8b 100644
--- a/packages/core/test/linker/integration_spec.ts
+++ b/packages/core/test/linker/integration_spec.ts
@@ -22,7 +22,7 @@ import {getDOM} from '@angular/platform-browser/src/dom/dom_adapter';
import {DOCUMENT} from '@angular/platform-browser/src/dom/dom_tokens';
import {dispatchEvent, el} from '@angular/platform-browser/testing/src/browser_util';
import {expect} from '@angular/platform-browser/testing/src/matchers';
-import {fixmeIvy, modifiedInIvy} from '@angular/private/testing';
+import {fixmeIvy, modifiedInIvy, obsoleteInIvy} from '@angular/private/testing';
import {stringify} from '../../src/util';
@@ -1500,7 +1500,7 @@ function declareTests(config?: {useJit: boolean}) {
}
});
- fixmeIvy('FW-722: getDebugContext needs to be replaced / re-implemented')
+ obsoleteInIvy('DebugContext is not patched on exceptions in ivy')
.it('should provide an error context when an error happens in DI', () => {
TestBed.configureTestingModule({
declarations: [MyComp, DirectiveThrowingAnError],
@@ -1519,7 +1519,7 @@ function declareTests(config?: {useJit: boolean}) {
}
});
- fixmeIvy('FW-722: getDebugContext needs to be replaced / re-implemented')
+ obsoleteInIvy('DebugContext is not patched on exceptions in ivy')
.it('should provide an error context when an error happens in change detection', () => {
TestBed.configureTestingModule({declarations: [MyComp, DirectiveThrowingAnError]});
const template = ``;
@@ -1538,7 +1538,7 @@ function declareTests(config?: {useJit: boolean}) {
}
});
- fixmeIvy('FW-722: getDebugContext needs to be replaced / re-implemented')
+ obsoleteInIvy('DebugContext is not patched on exceptions in ivy')
.it('should provide an error context when an error happens in change detection (text node)',
() => {
TestBed.configureTestingModule({declarations: [MyComp]});
@@ -1554,35 +1554,33 @@ function declareTests(config?: {useJit: boolean}) {
}
});
- if (getDOM().supportsDOMEvents()) { // this is required to use fakeAsync
- fixmeIvy('FW-722: getDebugContext needs to be replaced / re-implemented')
- .it('should provide an error context when an error happens in an event handler',
- fakeAsync(() => {
- TestBed.configureTestingModule({
- declarations: [MyComp, DirectiveEmittingEvent, DirectiveListeningEvent],
- schemas: [NO_ERRORS_SCHEMA],
- });
- const template = ``;
- TestBed.overrideComponent(MyComp, {set: {template}});
- const fixture = TestBed.createComponent(MyComp);
- tick();
+ obsoleteInIvy('DebugContext is not patched on exceptions in ivy')
+ .it('should provide an error context when an error happens in an event handler',
+ fakeAsync(() => {
+ TestBed.configureTestingModule({
+ declarations: [MyComp, DirectiveEmittingEvent, DirectiveListeningEvent],
+ schemas: [NO_ERRORS_SCHEMA],
+ });
+ const template = ``;
+ TestBed.overrideComponent(MyComp, {set: {template}});
+ const fixture = TestBed.createComponent(MyComp);
+ tick();
- const tc = fixture.debugElement.children[0];
+ const tc = fixture.debugElement.children[0];
- const errorHandler = tc.injector.get(ErrorHandler);
- let err: any;
- spyOn(errorHandler, 'handleError').and.callFake((e: any) => err = e);
- tc.injector.get(DirectiveEmittingEvent).fireEvent('boom');
+ const errorHandler = tc.injector.get(ErrorHandler);
+ let err: any;
+ spyOn(errorHandler, 'handleError').and.callFake((e: any) => err = e);
+ tc.injector.get(DirectiveEmittingEvent).fireEvent('boom');
- expect(err).toBeTruthy();
- const c = getDebugContext(err);
- expect(getDOM().nodeName(c.renderNode).toUpperCase()).toEqual('SPAN');
- expect(getDOM().nodeName(c.componentRenderElement).toUpperCase()).toEqual('DIV');
- expect((c.injector).get).toBeTruthy();
- expect(c.context).toBe(fixture.componentInstance);
- expect(c.references['local']).toBeDefined();
- }));
- }
+ expect(err).toBeTruthy();
+ const c = getDebugContext(err);
+ expect(getDOM().nodeName(c.renderNode).toUpperCase()).toEqual('SPAN');
+ expect(getDOM().nodeName(c.componentRenderElement).toUpperCase()).toEqual('DIV');
+ expect((c.injector).get).toBeTruthy();
+ expect(c.context).toBe(fixture.componentInstance);
+ expect(c.references['local']).toBeDefined();
+ }));
});
it('should support imperative views', () => {