| Index: tests/language/vm/causal_async_exception_stack_test.dart
|
| diff --git a/tests/language/vm/causal_async_exception_stack_test.dart b/tests/language/vm/causal_async_exception_stack_test.dart
|
| index 5e8eee0061fb72b969dfb62e854af83bdae0f8a2..ed4147fd2760cd16265ec4ebd8e6776188db5c9f 100644
|
| --- a/tests/language/vm/causal_async_exception_stack_test.dart
|
| +++ b/tests/language/vm/causal_async_exception_stack_test.dart
|
| @@ -1,4 +1,4 @@
|
| -// Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file
|
| +// Copyright (c) 2017, the Dart project authors. Please see the AUTHORS file
|
| // for details. All rights reserved. Use of this source code is governed by a
|
| // BSD-style license that can be found in the LICENSE file.
|
|
|
| @@ -24,18 +24,52 @@ foo() async {
|
| }
|
|
|
| main() async {
|
| + // Test async and async*.
|
| try {
|
| await foo();
|
| } catch (e, st) {
|
| expect(st.toString(), stringContainsInOrder([
|
| - 'thrower.<thrower_async_body>',
|
| - '<asynchronous suspension>',
|
| 'thrower',
|
| - 'generator.<generator_async_gen_body>',
|
| '<asynchronous suspension>',
|
| 'generator',
|
| - 'foo.<foo_async_body>',
|
| '<asynchronous suspension>',
|
| + 'foo',
|
| + '<asynchronous suspension>',
|
| + 'main',
|
| ]));
|
| }
|
| +
|
| + inner() async {
|
| + deep() async {
|
| + await thrower();
|
| + }
|
| + await deep();
|
| + }
|
| +
|
| + // Test inner functions.
|
| + try {
|
| + await inner();
|
| + } catch (e, st) {
|
| + expect(st.toString(), stringContainsInOrder([
|
| + 'thrower',
|
| + '<asynchronous suspension>',
|
| + 'main.inner.deep',
|
| + '<asynchronous suspension>',
|
| + 'main.inner',
|
| + '<asynchronous suspension>',
|
| + 'main',
|
| + '<asynchronous suspension>',
|
| + ]));
|
| + }
|
| +
|
| + // Test for correct linkage.
|
| + try {
|
| + await thrower();
|
| + } catch(e, st) {
|
| + expect(st.toString(), stringContainsInOrder([
|
| + 'thrower',
|
| + '<asynchronous suspension>',
|
| + 'main',
|
| + ]));
|
| + }
|
| }
|
|
|