Chromium Code Reviews| Index: runtime/observatory/tests/service/next_through_closure_test.dart |
| diff --git a/runtime/observatory/tests/service/next_through_closure_test.dart b/runtime/observatory/tests/service/next_through_closure_test.dart |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..420858b1d96aabecbf028ebd3463f3fcf9ddc9c4 |
| --- /dev/null |
| +++ b/runtime/observatory/tests/service/next_through_closure_test.dart |
| @@ -0,0 +1,36 @@ |
| +import 'test_helper.dart'; |
|
Kevin Millikin (Google)
2017/02/08 15:37:51
License header.
jensj
2017/02/13 14:04:16
Done.
|
| +import 'service_test_common.dart'; |
| + |
| +const int LINE_A = 10; |
| +const String file = "next_through_closure_test.dart"; |
| + |
| +codeXYZ(int i) { |
| + var x = () => |
| + // some comment here to allow this formatting |
| + i * i; // LINE_A |
| + return x(); |
| +} |
| + |
| +code() { |
| + codeXYZ(42); |
| +} |
| + |
| +List<String> stops = []; |
| +List<String> expected = [ |
| + "$file:${LINE_A+0}:9", |
| + "$file:${LINE_A+0}:7", |
| + "$file:${LINE_A+1}:3", |
| + "$file:${LINE_A+6}:1" |
| +]; |
| + |
| +var tests = [ |
| + hasPausedAtStart, |
| + setBreakpointAtLine(LINE_A), |
| + runStepThroughProgramRecordingStops(stops), |
| + checkRecordedStops(stops, expected) |
| +]; |
| + |
| +main(args) { |
| + runIsolateTestsSynchronous(args, tests, |
| + testeeConcurrent: code, pause_on_start: true, pause_on_exit: true); |
| +} |