1

after updating application to angular 6 I get errors during test execution

TypeError: Cannot read property 'subscribe' of undefined
        at new ApplicationRef node_modules/@angular/core/fesm5/core.js:4322:1)
        at _createClass node_modules/@angular/core/fesm5/core.js:8126:1)
        at _createProviderInstance$1 node_modules/@angular/core/fesm5/core.js:8088:1)
        at initNgModule node_modules/@angular/core/fesm5/core.js:8024:1)
        at new NgModuleRef_ node_modules/@angular/core/fesm5/core.js:8747:1)
        at createNgModuleRef node_modules/@angular/core/fesm5/core.js:8736:1)
        at Object.debugCreateNgModuleRef [as createNgModuleRef] node_modules/@angular/core/fesm5/core.js:10561:1)
        at NgModuleFactory_.push.../node_modules/@angular/core/fesm5/core.js.NgModuleFactory_.create node_modules/@angular/core/fesm5/core.js:11263:1)

It says, that

this._zone.onMicrotaskEmpty

is undefined.

My test executes some code running outside angular with

this._ngZone.runOutsideAngular();

Does someone know how to solve this problem?

1 Answers1

0

if you call this._ngZone.runOutsideAngular();, it will not inside ngZone, so you will not get this._zone.onMicrotaskEmpty. This emitter will only fire inside ngZone.

jiali passion
  • 1,691
  • 1
  • 14
  • 19