Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(252)

Unified Diff: tests/compiler/dart2js/async_await_js_transform_test.dart

Issue 2858463002: js_runtime: Split _asyncHelper into separate functions (Closed)
Patch Set: update test Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: tests/compiler/dart2js/async_await_js_transform_test.dart
diff --git a/tests/compiler/dart2js/async_await_js_transform_test.dart b/tests/compiler/dart2js/async_await_js_transform_test.dart
index 43249a3137885c08d938ba4c109adabafba3382a..b84700a27d10b07c2d3987dfa2ee5630b1c2bfe9 100644
--- a/tests/compiler/dart2js/async_await_js_transform_test.dart
+++ b/tests/compiler/dart2js/async_await_js_transform_test.dart
@@ -26,7 +26,10 @@ void testAsyncTransform(String source, String expected) {
new AsyncRewriter(
null, // The diagnostic helper should not be used in these tests.
null,
- asyncHelper: new VariableUse("thenHelper"),
+ asyncStart: new VariableUse("startHelper"),
+ asyncAwait: new VariableUse("awaitHelper"),
+ asyncReturn: new VariableUse("returnHelper"),
+ asyncRethrow: new VariableUse("rethrowHelper"),
completerFactory: new VariableUse("NewCompleter"),
wrapBody: new VariableUse("_wrapJsFunctionForAsync"),
safeVariableName: (String name) => "__$name",
@@ -73,7 +76,7 @@ main() {
// Function start
closures = [new A.main_closure()];
__goto = 2;
- return thenHelper(closures, body, __completer);
+ return awaitHelper(closures, body);
case 2:
// returning from await.
v0 = __result;
@@ -84,13 +87,13 @@ main() {
v3 = 2;
P.print(v0[v1].call$2(v2, v3));
// implicit return
- return thenHelper(null, 0, __completer);
+ return returnHelper(null, __completer);
case 1:
// rethrow
- return thenHelper(__currentError, 1, __completer);
+ return rethrowHelper(__currentError, __completer);
}
});
- return thenHelper(null, body, __completer);
+ return startHelper(body, __completer);
}""")
/// 01: ok
@@ -116,17 +119,17 @@ function(a) {
// Function start
print(__self.x);
__goto = 2;
- return thenHelper(foo(), body, __completer);
+ return awaitHelper(foo(), body);
case 2:
// returning from await.
// implicit return
- return thenHelper(null, 0, __completer);
+ return returnHelper(null, __completer);
case 1:
// rethrow
- return thenHelper(__currentError, 1, __completer);
+ return rethrowHelper(__currentError, __completer);
}
});
- return thenHelper(null, body, __completer);
+ return startHelper(body, __completer);
}""");
testAsyncTransform(
@@ -186,7 +189,7 @@ function(b) {
break __outer1;
}
__goto = 12;
- return thenHelper(foo(), body, __completer);
+ return awaitHelper(foo(), body);
case 12:
// returning from await.
__helper = __result;
@@ -246,13 +249,13 @@ function(b) {
break;
case 1:
// return
- return thenHelper(__returnValue, 0, __completer);
+ return returnHelper(__returnValue, __completer);
case 2:
// rethrow
- return thenHelper(__currentError, 1, __completer);
+ return rethrowHelper(__currentError, __completer);
}
});
- return thenHelper(null, body, __completer);
+ return startHelper(body, __completer);
}""");
testAsyncTransform(
@@ -281,35 +284,35 @@ function(c) {
a = b++;
b = --b;
__goto = 2;
- return thenHelper(foo(), body, __completer);
+ return awaitHelper(foo(), body);
case 2:
// returning from await.
c = __result.a++;
__goto = 3;
- return thenHelper(foo(), body, __completer);
+ return awaitHelper(foo(), body);
case 3:
// returning from await.
d = ++__result.a;
__temp1 = foo1();
__goto = 4;
- return thenHelper(foo2(), body, __completer);
+ return awaitHelper(foo2(), body);
case 4:
// returning from await.
e = __temp1[__result]--;
__temp1 = foo1();
__goto = 5;
- return thenHelper(foo2(), body, __completer);
+ return awaitHelper(foo2(), body);
case 5:
// returning from await.
f = --__temp1[__result];
// implicit return
- return thenHelper(null, 0, __completer);
+ return returnHelper(null, __completer);
case 1:
// rethrow
- return thenHelper(__currentError, 1, __completer);
+ return rethrowHelper(__currentError, __completer);
}
});
- return thenHelper(null, body, __completer);
+ return startHelper(body, __completer);
}""");
testAsyncTransform(
@@ -351,19 +354,19 @@ function(d2) {
case 2:
// then
__goto = 4;
- return thenHelper(foo2(), body, __completer);
+ return awaitHelper(foo2(), body);
case 4:
// returning from await.
case 3:
// join
a = __result;
__goto = 5;
- return thenHelper(foo1(), body, __completer);
+ return awaitHelper(foo1(), body);
case 5:
// returning from await.
b = __result || foo2();
__goto = 8;
- return thenHelper(foo1(), body, __completer);
+ return awaitHelper(foo1(), body);
case 8:
// returning from await.
__temp1 = __result;
@@ -381,7 +384,7 @@ function(d2) {
// then
__temp1 = foo3;
__goto = 9;
- return thenHelper(foo2(), body, __completer);
+ return awaitHelper(foo2(), body);
case 9:
// returning from await.
__result = __temp1(__result);
@@ -402,19 +405,19 @@ function(d2) {
case 10:
// then
__goto = 12;
- return thenHelper(foo2(), body, __completer);
+ return awaitHelper(foo2(), body);
case 12:
// returning from await.
case 11:
// join
e = __result;
__goto = 13;
- return thenHelper(foo1(), body, __completer);
+ return awaitHelper(foo1(), body);
case 13:
// returning from await.
f = __result && foo2();
__goto = 16;
- return thenHelper(foo1(), body, __completer);
+ return awaitHelper(foo1(), body);
case 16:
// returning from await.
__temp1 = __result;
@@ -430,7 +433,7 @@ function(d2) {
case 14:
// then
__goto = 17;
- return thenHelper(foo2(), body, __completer);
+ return awaitHelper(foo2(), body);
case 17:
// returning from await.
case 15:
@@ -438,13 +441,13 @@ function(d2) {
g = __result;
h = foo1() && foo2();
// implicit return
- return thenHelper(null, 0, __completer);
+ return returnHelper(null, __completer);
case 1:
// rethrow
- return thenHelper(__currentError, 1, __completer);
+ return rethrowHelper(__currentError, __completer);
}
});
- return thenHelper(null, body, __completer);
+ return startHelper(body, __completer);
}""");
testAsyncTransform(
@@ -508,7 +511,7 @@ function(x, y) {
case 7:
// case
__goto = 10;
- return thenHelper(foo(), body, __completer);
+ return awaitHelper(foo(), body);
case 10:
// returning from await.
// goto while condition
@@ -517,7 +520,7 @@ function(x, y) {
case 8:
// case
__goto = 11;
- return thenHelper(foo(), body, __completer);
+ return awaitHelper(foo(), body);
case 11:
// returning from await.
// goto after switch
@@ -534,13 +537,13 @@ function(x, y) {
case 3:
// after while
// implicit return
- return thenHelper(null, 0, __completer);
+ return returnHelper(null, __completer);
case 1:
// rethrow
- return thenHelper(__currentError, 1, __completer);
+ return rethrowHelper(__currentError, __completer);
}
});
- return thenHelper(null, body, __completer);
+ return startHelper(body, __completer);
}""");
testAsyncTransform(
@@ -570,7 +573,7 @@ function(f) {
case 2:
// do body
__goto = 5;
- return thenHelper(foo(), body, __completer);
+ return awaitHelper(foo(), body);
case 5:
// returning from await.
a = __result;
@@ -586,7 +589,7 @@ function(f) {
case 3:
// do condition
__goto = 6;
- return thenHelper(foo(), body, __completer);
+ return awaitHelper(foo(), body);
case 6:
// returning from await.
if (__result) {
@@ -597,13 +600,13 @@ function(f) {
case 4:
// after do
// implicit return
- return thenHelper(null, 0, __completer);
+ return returnHelper(null, __completer);
case 1:
// rethrow
- return thenHelper(__currentError, 1, __completer);
+ return rethrowHelper(__currentError, __completer);
}
});
- return thenHelper(null, body, __completer);
+ return startHelper(body, __completer);
}""");
testAsyncTransform(
@@ -639,7 +642,7 @@ function(g) {
// for condition
__temp1 = i;
__goto = 6;
- return thenHelper(foo1(), body, __completer);
+ return awaitHelper(foo1(), body);
case 6:
// returning from await.
if (!(__temp1 < __result)) {
@@ -661,7 +664,7 @@ function(g) {
case 7:
// then
__goto = 9;
- return thenHelper(foo(), body, __completer);
+ return awaitHelper(foo(), body);
case 9:
// returning from await.
// goto return
@@ -671,14 +674,14 @@ function(g) {
// join
__temp1 = print;
__goto = 10;
- return thenHelper(foo(i), body, __completer);
+ return awaitHelper(foo(i), body);
case 10:
// returning from await.
__temp1(__result);
case 4:
// for update
__goto = 11;
- return thenHelper(foo2(), body, __completer);
+ return awaitHelper(foo2(), body);
case 11:
// returning from await.
i += __result;
@@ -689,13 +692,13 @@ function(g) {
// after for
case 1:
// return
- return thenHelper(__returnValue, 0, __completer);
+ return returnHelper(__returnValue, __completer);
case 2:
// rethrow
- return thenHelper(__currentError, 1, __completer);
+ return rethrowHelper(__currentError, __completer);
}
});
- return thenHelper(null, body, __completer);
+ return startHelper(body, __completer);
}""");
testAsyncTransform(
@@ -723,56 +726,56 @@ function(a, h) {
// Function start
__temp1 = foo1();
__goto = 2;
- return thenHelper(foo2(), body, __completer);
+ return awaitHelper(foo2(), body);
case 2:
// returning from await.
x = {a: __temp1, b: __result, c: foo3()};
x.a = 2;
__goto = 3;
- return thenHelper(foo(), body, __completer);
+ return awaitHelper(foo(), body);
case 3:
// returning from await.
__result.a = 3;
__temp1 = x;
__goto = 4;
- return thenHelper(foo(), body, __completer);
+ return awaitHelper(foo(), body);
case 4:
// returning from await.
__temp1[__result] = 4;
__temp1 = x;
__goto = 5;
- return thenHelper(foo1(), body, __completer);
+ return awaitHelper(foo1(), body);
case 5:
// returning from await.
__temp2 = __result;
__goto = 6;
- return thenHelper(foo2(), body, __completer);
+ return awaitHelper(foo2(), body);
case 6:
// returning from await.
__temp1[__temp2.a = __result] = 5;
__goto = 7;
- return thenHelper(foo1(), body, __completer);
+ return awaitHelper(foo1(), body);
case 7:
// returning from await.
__temp1 = __result;
__goto = 8;
- return thenHelper(foo2(), body, __completer);
+ return awaitHelper(foo2(), body);
case 8:
// returning from await.
__temp2 = __result;
__goto = 9;
- return thenHelper(foo3(6), body, __completer);
+ return awaitHelper(foo3(6), body);
case 9:
// returning from await.
__temp1[__temp2] = __result;
// implicit return
- return thenHelper(null, 0, __completer);
+ return returnHelper(null, __completer);
case 1:
// rethrow
- return thenHelper(__currentError, 1, __completer);
+ return rethrowHelper(__currentError, __completer);
}
});
- return thenHelper(null, body, __completer);
+ return startHelper(body, __completer);
}""");
testAsyncTransform(
@@ -810,7 +813,7 @@ function(c, i) {
case 6:
// then
__goto = 9;
- return thenHelper(foo(), body, __completer);
+ return awaitHelper(foo(), body);
case 9:
// returning from await.
// goto join
@@ -837,7 +840,7 @@ function(c, i) {
case 14:
// then
__goto = 17;
- return thenHelper(fooError(__error), body, __completer);
+ return awaitHelper(fooError(__error), body);
case 17:
// returning from await.
// goto join
@@ -885,13 +888,13 @@ function(c, i) {
case 5:
// after finally
// implicit return
- return thenHelper(null, 0, __completer);
+ return returnHelper(null, __completer);
case 1:
// rethrow
- return thenHelper(__currentError, 1, __completer);
+ return rethrowHelper(__currentError, __completer);
}
});
- return thenHelper(null, body, __completer);
+ return startHelper(body, __completer);
}""");
testAsyncTransform(
@@ -918,48 +921,48 @@ function(x, y, j) {
// Function start
__temp1 = print;
__goto = 2;
- return thenHelper(foo(x), body, __completer);
+ return awaitHelper(foo(x), body);
case 2:
// returning from await.
__temp1(__result);
__goto = 3;
- return thenHelper(print, body, __completer);
+ return awaitHelper(print, body);
case 3:
// returning from await.
__result(foo(x));
__temp1 = print;
__temp2 = foo;
__goto = 4;
- return thenHelper(x, body, __completer);
+ return awaitHelper(x, body);
case 4:
// returning from await.
__temp1(__temp2(__result));
__temp1 = print;
__temp2 = foo;
__goto = 6;
- return thenHelper(x, body, __completer);
+ return awaitHelper(x, body);
case 6:
// returning from await.
__goto = 5;
- return thenHelper(__temp1(__temp2(__result)), body, __completer);
+ return awaitHelper(__temp1(__temp2(__result)), body);
case 5:
// returning from await.
__temp1 = print;
__temp2 = foo;
__temp3 = x;
__goto = 7;
- return thenHelper(y, body, __completer);
+ return awaitHelper(y, body);
case 7:
// returning from await.
__temp1(__temp2(__temp3, __result, z));
// implicit return
- return thenHelper(null, 0, __completer);
+ return returnHelper(null, __completer);
case 1:
// rethrow
- return thenHelper(__currentError, 1, __completer);
+ return rethrowHelper(__currentError, __completer);
}
});
- return thenHelper(null, body, __completer);
+ return startHelper(body, __completer);
}""");
testAsyncTransform(
@@ -1004,7 +1007,7 @@ function(x, y, k) {
case 3:
// while condition
__goto = 5;
- return thenHelper(foo(), body, __completer);
+ return awaitHelper(foo(), body);
case 5:
// returning from await.
if (!__result) {
@@ -1026,7 +1029,7 @@ function(x, y, k) {
break;
}
__goto = 12;
- return thenHelper(bar(), body, __completer);
+ return awaitHelper(bar(), body);
case 12:
// returning from await.
if (__temp1 === __result) {
@@ -1049,7 +1052,7 @@ function(x, y, k) {
// case
__temp1 = print;
__goto = 15;
- return thenHelper(foo1(x), body, __completer);
+ return awaitHelper(foo1(x), body);
case 15:
// returning from await.
__temp1(__result);
@@ -1061,7 +1064,7 @@ function(x, y, k) {
// case
__temp1 = print;
__goto = 16;
- return thenHelper(foobar(x), body, __completer);
+ return awaitHelper(foobar(x), body);
case 16:
// returning from await.
__temp1(__result);
@@ -1095,13 +1098,13 @@ function(x, y, k) {
// after while
case 1:
// return
- return thenHelper(__returnValue, 0, __completer);
+ return returnHelper(__returnValue, __completer);
case 2:
// rethrow
- return thenHelper(__currentError, 1, __completer);
+ return rethrowHelper(__currentError, __completer);
}
});
- return thenHelper(null, body, __completer);
+ return startHelper(body, __completer);
}""");
testAsyncTransform(
@@ -1132,7 +1135,7 @@ function(l) {
case 0:
// Function start
__goto = 2;
- return thenHelper(l, body, __completer);
+ return awaitHelper(l, body);
case 2:
// returning from await.
switch (__result) {
@@ -1146,13 +1149,13 @@ function(l) {
break;
}
// implicit return
- return thenHelper(null, 0, __completer);
+ return returnHelper(null, __completer);
case 1:
// rethrow
- return thenHelper(__currentError, 1, __completer);
+ return rethrowHelper(__currentError, __completer);
}
});
- return thenHelper(null, body, __completer);
+ return startHelper(body, __completer);
}""");
testAsyncTransform(
@@ -1188,7 +1191,7 @@ function(m) {
exception = 1;
__handler = 3;
__goto = 6;
- return thenHelper(42, body, __completer);
+ return awaitHelper(42, body);
case 6:
// returning from await.
throw 42;
@@ -1201,12 +1204,12 @@ function(m) {
__handler = 2;
__exception = __currentError;
__goto = 7;
- return thenHelper(10, body, __completer);
+ return awaitHelper(10, body);
case 7:
// returning from await.
__exception = __result;
__goto = 8;
- return thenHelper(10, body, __completer);
+ return awaitHelper(10, body);
case 8:
// returning from await.
__exception += __result;
@@ -1227,13 +1230,13 @@ function(m) {
// after finally
print(exception);
// implicit return
- return thenHelper(null, 0, __completer);
+ return returnHelper(null, __completer);
case 1:
// rethrow
- return thenHelper(__currentError, 1, __completer);
+ return rethrowHelper(__currentError, __completer);
}
});
- return thenHelper(null, body, __completer);
+ return startHelper(body, __completer);
}""");
testSyncStarTransform(
« no previous file with comments | « sdk/lib/_internal/js_runtime/lib/async_patch.dart ('k') | tests/compiler/dart2js/sourcemaps/stacktrace_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698