| OLD | NEW |
| 1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file |
| 2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
| 3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
| 4 // VMOptions=--compile-all --error_on_bad_type --error_on_bad_override | 4 // VMOptions=--compile-all --error_on_bad_type --error_on_bad_override |
| 5 | 5 |
| 6 import 'package:observatory/service_io.dart'; | 6 import 'package:observatory/service_io.dart'; |
| 7 import 'package:unittest/unittest.dart'; | 7 import 'package:unittest/unittest.dart'; |
| 8 import 'test_helper.dart'; | 8 import 'test_helper.dart'; |
| 9 import 'dart:async'; | |
| 10 | |
| 11 import 'dart:math' as math; | |
| 12 | 9 |
| 13 breakHere() {} | 10 breakHere() {} |
| 14 | 11 |
| 12 use(dynamic v) => v; |
| 13 |
| 15 class C { | 14 class C { |
| 16 var instVar = 1; | 15 var instVar = 1; |
| 17 static var classVar = 2; | 16 static var classVar = 2; |
| 18 | 17 |
| 19 method(methodParam) { | 18 method(methodParam) { |
| 20 var methodTemp = 4; | 19 var methodTemp = 4; |
| 20 use(methodTemp); |
| 21 [5].forEach((outerParam) { | 21 [5].forEach((outerParam) { |
| 22 var outerTemp = 6; | 22 var outerTemp = 6; |
| 23 use(outerTemp); |
| 23 [7].forEach((innerParam) { | 24 [7].forEach((innerParam) { |
| 24 var innerTemp = 8; | 25 var innerTemp = 8; |
| 26 use(innerTemp); |
| 25 breakHere(); | 27 breakHere(); |
| 26 }); | 28 }); |
| 27 }); | 29 }); |
| 28 } | 30 } |
| 29 | 31 |
| 30 static method2(methodParam) { | 32 static method2(methodParam) { |
| 31 var methodTemp = 4; | 33 var methodTemp = 4; |
| 34 use(methodTemp); |
| 32 [5].forEach((outerParam) { | 35 [5].forEach((outerParam) { |
| 33 var outerTemp = 6; | 36 var outerTemp = 6; |
| 37 use(outerTemp); |
| 34 [7].forEach((innerParam) { | 38 [7].forEach((innerParam) { |
| 35 var innerTemp = 8; | 39 var innerTemp = 8; |
| 40 use(innerTemp); |
| 36 breakHere(); | 41 breakHere(); |
| 37 }); | 42 }); |
| 38 }); | 43 }); |
| 39 } | 44 } |
| 40 | 45 |
| 41 method3(methodParam) { | 46 method3(methodParam) { |
| 42 var methodTemp = 4; | 47 var methodTemp = 4; |
| 48 use(methodTemp); |
| 43 breakHere(); | 49 breakHere(); |
| 44 } | 50 } |
| 45 | 51 |
| 46 static var closureWithReturnedHome; | 52 static var closureWithReturnedHome; |
| 47 method4(methodParam) { | 53 method4(methodParam) { |
| 48 var methodTemp = 4; | 54 var methodTemp = 4; |
| 55 use(methodTemp); |
| 49 [5].forEach((outerParam) { | 56 [5].forEach((outerParam) { |
| 50 var outerTemp = 6; | 57 var outerTemp = 6; |
| 58 use(outerTemp); |
| 51 closureWithReturnedHome = (innerParam) { | 59 closureWithReturnedHome = (innerParam) { |
| 52 var innerTemp = 8; | 60 var innerTemp = 8; |
| 61 use(innerTemp); |
| 53 breakHere(); | 62 breakHere(); |
| 54 }; | 63 }; |
| 55 }); | 64 }); |
| 56 } | 65 } |
| 57 } | 66 } |
| 58 | 67 |
| 59 testMethod(Isolate isolate) async { | 68 testMethod(Isolate isolate) async { |
| 60 Library rootLib = await isolate.rootLib.load(); | 69 Library rootLib = await isolate.rootLib.load(); |
| 61 ServiceFunction function = | 70 ServiceFunction function = |
| 62 rootLib.functions.singleWhere((f) => f.name == 'breakHere'); | 71 rootLib.functions.singleWhere((f) => f.name == 'breakHere'); |
| (...skipping 180 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 243 } | 252 } |
| 244 | 253 |
| 245 var tests = [ | 254 var tests = [ |
| 246 testMethod, | 255 testMethod, |
| 247 testMethod2, | 256 testMethod2, |
| 248 testMethod3, | 257 testMethod3, |
| 249 testMethod4, | 258 testMethod4, |
| 250 ]; | 259 ]; |
| 251 | 260 |
| 252 main(args) => runIsolateTests(args, tests); | 261 main(args) => runIsolateTests(args, tests); |
| OLD | NEW |