| Index: test/mjsunit/debug-set-variable-value.js
|
| diff --git a/test/mjsunit/debug-set-variable-value.js b/test/mjsunit/debug-set-variable-value.js
|
| index 65434289d002b2ce023813a6ca1e936026217407..6f872dfecf668b504e40c6634882d316fe2f5da7 100644
|
| --- a/test/mjsunit/debug-set-variable-value.js
|
| +++ b/test/mjsunit/debug-set-variable-value.js
|
| @@ -63,7 +63,7 @@ function RunPauseTest(scope_number, expected_old_result, variable_name,
|
| // Add the debug event listener.
|
| Debug.setListener(listener);
|
|
|
| - var actual_new_value;
|
| + var actual_new_result;
|
| try {
|
| actual_new_result = fun();
|
| } finally {
|
| @@ -78,7 +78,7 @@ function RunPauseTest(scope_number, expected_old_result, variable_name,
|
| assertEquals(expected_new_result, actual_new_result);
|
| }
|
|
|
| -// Accepts a closure 'fun' that returns a variable from it's outer scope.
|
| +// Accepts a closure 'fun' that returns a variable from its outer scope.
|
| // The test changes the value of variable via the handle to function and checks
|
| // that the return value changed accordingly.
|
| function RunClosureTest(scope_number, expected_old_result, variable_name,
|
| @@ -307,3 +307,32 @@ assertSame(Number, DebugCommandProcessor.resolveValue_(
|
| {handle: Debug.MakeMirror(Number).handle()}));
|
| assertSame(RunClosureTest, DebugCommandProcessor.resolveValue_(
|
| {handle: Debug.MakeMirror(RunClosureTest).handle()}));
|
| +
|
| +
|
| +// Test script-scope variable.
|
| +let abc = 12;
|
| +{
|
| + let exception;
|
| + function listener(event, exec_state) {
|
| + try {
|
| + if (event == Debug.DebugEvent.Break) {
|
| + let scope_count = exec_state.frame().scopeCount();
|
| + let script_scope = exec_state.frame().scope(scope_count - 2);
|
| + assertTrue(script_scope.isScope());
|
| + assertEquals(debug.ScopeType.Script, script_scope.scopeType());
|
| + script_scope.setVariableValue('abc', 42);
|
| + }
|
| + } catch(e) { exception = e }
|
| + }
|
| +
|
| + Debug.setListener(listener);
|
| + assertEquals(12, abc);
|
| + debugger;
|
| + assertEquals(42, abc);
|
| +
|
| + if (exception != null) {
|
| + assertUnreachable("Exception in listener\n" + exception.stack);
|
| + }
|
| +}
|
| +
|
| +Debug.setListener(null);
|
|
|