Index: tests/lib/async/zone_run_unary_test.dart |
diff --git a/tests/lib/async/zone_run_unary_test.dart b/tests/lib/async/zone_run_unary_test.dart |
index 7005613dcee27936d4dbed7328d624b870788977..7e6423720eff926862ce5490d1b5941158fc06e4 100644 |
--- a/tests/lib/async/zone_run_unary_test.dart |
+++ b/tests/lib/async/zone_run_unary_test.dart |
@@ -12,14 +12,17 @@ main() { |
bool shouldForward = true; |
Expect.identical(Zone.ROOT, Zone.current); |
- Zone forked = Zone.current.fork(specification: new ZoneSpecification( |
- runUnary: (Zone self, ZoneDelegate parent, Zone origin, f(arg), arg) { |
+ Zone forked = Zone.current.fork(specification: new ZoneSpecification(runUnary: |
+ <R, T>(Zone self, ZoneDelegate parent, Zone origin, R f(arg), T arg) { |
// The zone is still the same as when origin.run was invoked, which |
// is the root zone. (The origin zone hasn't been set yet). |
Expect.identical(Zone.current, Zone.ROOT); |
events.add("forked.run1"); |
- if (shouldForward) return parent.runUnary(origin, f, arg + 1); |
- return 42; |
+ if (shouldForward) { |
+ var nextArg = (arg as int) + 1; |
+ return parent.runUnary(origin, f, nextArg as T); |
+ } |
+ return 42 as R; |
})); |
events.add("zone forked"); |