OLD | NEW |
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, 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 | 4 |
5 import "debug_lib.dart"; | 5 import "debug_lib.dart"; |
6 | 6 |
7 main(List<String> arguments) { | 7 main(List<String> arguments) { |
8 if (RunScript(testScript, arguments)) return; | 8 if (RunScript(testScript, arguments)) return; |
9 | 9 |
10 Foo foo = new Foo(); | 10 Foo foo = new Foo(); |
11 | 11 |
12 print("Hello from debuggee"); | 12 print("Hello from debuggee"); |
13 } | 13 } |
14 | 14 |
15 class Foo { | 15 class Foo { |
16 String toString() { | 16 String toString() { |
17 throw 'I always throw'; | 17 throw 'I always throw'; |
18 } | 18 } |
19 } | 19 } |
20 | 20 |
| 21 // Make sure Foo.toString() does not get called. |
21 var testScript = [ | 22 var testScript = [ |
22 MatchFrame(0, "main"), | 23 MatchFrame(0, "main"), |
23 SetBreakpoint(12), | 24 SetBreakpoint(12), |
24 Resume(), | 25 Resume(), |
25 MatchFrame(0, "main"), | 26 MatchFrame(0, "main"), |
26 MatchLocals({"foo": "#ERROR"}), | 27 MatchLocals({"foo": "object of type Foo"}), |
27 Resume(), | 28 Resume(), |
28 ]; | 29 ]; |
OLD | NEW |