diff --git a/lib/core/scope.dart b/lib/core/scope.dart
index 128cf77e9..84beb674d 100644
--- a/lib/core/scope.dart
+++ b/lib/core/scope.dart
@@ -605,6 +605,7 @@ class RootScope extends Scope {
{
_zone.onTurnDone = apply;
_zone.onError = (e, s, ls) => _exceptionHandler(e, s);
+ _zone.onScheduleMicrotask = runAsync;
}
RootScope get rootScope => this;
diff --git a/lib/core/zone.dart b/lib/core/zone.dart
index 6fa29d062..9ce95e9bb 100644
--- a/lib/core/zone.dart
+++ b/lib/core/zone.dart
@@ -60,7 +60,7 @@ class VmTurnZone {
/// an "inner" [Zone], which is a child of the outer [Zone].
async.Zone _innerZone;
- ZoneScheduleMicrotask defaultOnScheduleMicrotask;
+ ZoneScheduleMicrotask onScheduleMicrotask;
/**
* Associates with this
@@ -115,8 +115,8 @@ class VmTurnZone {
_onScheduleMicrotask(async.Zone self, async.ZoneDelegate delegate,
async.Zone zone, fn()) {
- if (defaultOnScheduleMicrotask != null) {
- return defaultOnScheduleMicrotask(fn);
+ if (onScheduleMicrotask != null) {
+ return onScheduleMicrotask(fn);
}
_asyncQueue.add(() => delegate.run(zone, fn));
diff --git a/test/core/templateurl_spec.dart b/test/core/templateurl_spec.dart
index 2c513125a..109c4baa2 100644
--- a/test/core/templateurl_spec.dart
+++ b/test/core/templateurl_spec.dart
@@ -63,10 +63,9 @@ void main() {
..whenGET('PREFIX:simple.css').respond('.hello{}');
var element = e('
ignore');
- zone.run(() {
- compile([element], directives)(injector, [element]);
- });
+ compile([element], directives)(injector, [element]);
+ microLeap();
backend.flush();
microLeap();
diff --git a/test/core/zone_spec.dart b/test/core/zone_spec.dart
index d0a5b99b8..30148e0bf 100644
--- a/test/core/zone_spec.dart
+++ b/test/core/zone_spec.dart
@@ -452,7 +452,7 @@ void main() {
});
log('onTurnDone(end)');
};
- zone.defaultOnScheduleMicrotask = (microTaskFn) {
+ zone.onScheduleMicrotask = (microTaskFn) {
log('onScheduleMicrotask(begin)');
microtaskResult = microTaskFn();
log('onScheduleMicrotask(end)');
@@ -478,7 +478,7 @@ void main() {
});
log('onTurnDone(end)');
};
- zone.defaultOnScheduleMicrotask = (microTaskFn) {
+ zone.onScheduleMicrotask = (microTaskFn) {
log('onScheduleMicrotask(begin)');
microTaskFn();
log('onScheduleMicrotask(end)');
@@ -500,7 +500,7 @@ void main() {
zone.onTurnDone = () {
log('onTurnDone');
};
- zone.defaultOnScheduleMicrotask = (microTaskFn) {
+ zone.onScheduleMicrotask = (microTaskFn) {
log('onScheduleMicrotask(begin)');
microTaskFn();
log('onScheduleMicrotask(end)');
@@ -528,7 +528,7 @@ void main() {
zone.onTurnDone = () {
log('onTurnDone');
};
- zone.defaultOnScheduleMicrotask = (microTaskFn) {
+ zone.onScheduleMicrotask = (microTaskFn) {
log('onScheduleMicrotask(begin)');
microTaskFn();
log('onScheduleMicrotask(end)');