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

Side by Side Diff: test/mjsunit/debug-evaluate-modify-catch-block-scope.js

Issue 1834633003: [debugger] allow debug-evaluate to change stack and context values. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: address comments Created 4 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 unified diff | Download patch
OLDNEW
1 // Copyright 2015 the V8 project authors. All rights reserved. 1 // Copyright 2015 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 // Flags: --expose-debug-as debug --debug-eval-readonly-locals 5 // Flags: --expose-debug-as debug
6 6
7 Debug = debug.Debug 7 Debug = debug.Debug
8 8
9 var exception = null; 9 var exception = null;
10 function listener(event, exec_state, event_data, data) { 10 function listener(event, exec_state, event_data, data) {
11 if (event != Debug.DebugEvent.Break) return; 11 if (event != Debug.DebugEvent.Break) return;
12 try { 12 try {
13 exec_state.frame(0).evaluate("a = 2");
14 exec_state.frame(0).evaluate("e = 3");
13 exec_state.frame(0).evaluate("bar()"); 15 exec_state.frame(0).evaluate("bar()");
16 exec_state.frame(0).evaluate("a++");
17 exec_state.frame(0).evaluate("e++");
14 } catch (e) { 18 } catch (e) {
15 exception = e; 19 exception = e;
16 print(e + e.stack); 20 print(e + e.stack);
17 } 21 }
18 } 22 }
19 23
20 Debug.setListener(listener); 24 Debug.setListener(listener);
21 25
22 (function() { 26 (function() {
23 "use strict"; 27 "use strict";
24 try { 28 try {
25 throw 1; 29 throw 1;
26 } catch (e) { 30 } catch (e) {
27 let a = 1; 31 let a = 1;
28 function bar() { 32 function bar() {
29 a = 2; 33 a *= 2;
30 e = 2; 34 e *= 2;
31 } 35 }
32 debugger; 36 debugger;
33 assertEquals(2, a); 37 assertEquals(5, a);
34 assertEquals(2, e); 38 assertEquals(7, e);
35 } 39 }
36 })(); 40 })();
37 41
38 Debug.setListener(null); 42 Debug.setListener(null);
39 assertNull(exception); 43 assertNull(exception);
OLDNEW
« no previous file with comments | « test/mjsunit/debug-evaluate-locals-capturing.js ('k') | test/mjsunit/debug-evaluate-modify-this.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698