| Index: test/debugger/debug/debug-evaluate-locals-optimized.js
|
| diff --git a/test/mjsunit/debug-evaluate-locals-optimized.js b/test/debugger/debug/debug-evaluate-locals-optimized.js
|
| similarity index 73%
|
| rename from test/mjsunit/debug-evaluate-locals-optimized.js
|
| rename to test/debugger/debug/debug-evaluate-locals-optimized.js
|
| index 9d539fe2824f0d726e7b364c188924dc62e24407..32e53795028396499c90670cb18d33fa37bfee66 100644
|
| --- a/test/mjsunit/debug-evaluate-locals-optimized.js
|
| +++ b/test/debugger/debug/debug-evaluate-locals-optimized.js
|
| @@ -25,10 +25,9 @@
|
| // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
| // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
|
| -// Flags: --expose-debug-as debug --expose-gc --allow-natives-syntax
|
| +// Flags: --expose-gc
|
| // Flags: --inline-construct
|
|
|
| -// Get the Debug object exposed from the debug context global object.
|
| Debug = debug.Debug
|
|
|
| var listenerComplete = false;
|
| @@ -37,22 +36,18 @@ var exception = false;
|
| var testingConstructCall = false;
|
|
|
| var expected = [
|
| - { locals: {a0: 1, b0: 2},
|
| + { locals: {i: 0, x0: 3, y0: 4, a0: 1, b0: 2},
|
| args: { names: ["i", "x0", "y0"], values: [0, 3, 4] } },
|
| - { locals: {a1: 3, b1: 4},
|
| + { locals: {i: 1, x1: 5, y1: 6, a1: 3, b1: 4},
|
| args: { names: ["i", "x1", "y1"], values: [1, 5, 6] } },
|
| - { locals: {a2: 5, b2: 6},
|
| + { locals: {i: 2, a2: 5, b2: 6},
|
| args: { names: ["i"], values: [2] } },
|
| - { locals: {a3: 7, b3: 8},
|
| + { locals: {i: 3, x3: 9, y3: 10, z3: undefined, a3: 7, b3: 8},
|
| args: { names: ["i", "x3", "y3", "z3"], values: [3, 9, 10, undefined] } },
|
| - { locals: {a4: 9, b4: 10},
|
| + { locals: {i: 4, x4: 11, y4: 12, a4: 9, b4: 10},
|
| args: { names: ["i", "x4", "y4"], values: [4, 11, 12] } }
|
| ];
|
|
|
| -function arraySum(arr) {
|
| - return arr.reduce(function (a, b) { return a + b; }, 0);
|
| -}
|
| -
|
| function listener(event, exec_state, event_data, data) {
|
| try {
|
| if (event == Debug.DebugEvent.Break)
|
| @@ -72,13 +67,6 @@ function listener(event, exec_state, event_data, data) {
|
| }
|
| assertPropertiesEqual(expected_locals, locals);
|
|
|
| - // All frames except the bottom one have expected arguments.
|
| - for (var j = 0; j < expected_args.names.length; j++) {
|
| - assertEquals(expected_args.names[j], frame.argumentName(j));
|
| - assertEquals(expected_args.values[j],
|
| - frame.argumentValue(j).value());
|
| - }
|
| -
|
| // All frames except the bottom one have three scopes.
|
| assertEquals(3, frame.scopeCount());
|
| assertEquals(debug.ScopeType.Local, frame.scope(0).scopeType());
|
| @@ -108,22 +96,6 @@ function listener(event, exec_state, event_data, data) {
|
| assertEquals(arg_value, frame.evaluate(arg_name).value());
|
| assertEquals(arg_value, frame.evaluate('arguments['+j+']').value());
|
| }
|
| -
|
| - var expected_args_sum = arraySum(expected_args.values);
|
| - var expected_locals_sum =
|
| - arraySum(Object.keys(expected_locals).
|
| - map(function (k) { return expected_locals[k]; }));
|
| -
|
| - assertEquals(expected_locals_sum + expected_args_sum,
|
| - frame.evaluate(Object.keys(expected_locals).join('+') +
|
| - ' + ' +
|
| - expected_args.names.join('+')).value());
|
| -
|
| - var arguments_sum = expected_args.names.map(function(_, idx) {
|
| - return "arguments[" + idx + "]";
|
| - }).join('+');
|
| - assertEquals(expected_args_sum,
|
| - frame.evaluate(arguments_sum).value());
|
| } else {
|
| // The bottom frame only have the script scope and the global scope.
|
| assertEquals(2, frame.scopeCount());
|
| @@ -133,28 +105,14 @@ function listener(event, exec_state, event_data, data) {
|
|
|
| // Check the frame function.
|
| switch (i) {
|
| - case 0: assertEquals(h, frame.func().value()); break;
|
| - case 1: assertEquals(g3, frame.func().value()); break;
|
| - case 2: assertEquals(g2, frame.func().value()); break;
|
| - case 3: assertEquals(g1, frame.func().value()); break;
|
| - case 4: assertEquals(f, frame.func().value()); break;
|
| + case 0: assertEquals("h", frame.func().name()); break;
|
| + case 1: assertEquals("g3", frame.func().name()); break;
|
| + case 2: assertEquals("g2", frame.func().name()); break;
|
| + case 3: assertEquals("g1", frame.func().name()); break;
|
| + case 4: assertEquals("f", frame.func().name()); break;
|
| case 5: break;
|
| default: assertUnreachable();
|
| }
|
| -
|
| - // Check for construct call.
|
| - if (i == 4) {
|
| - assertEquals(testingConstructCall, frame.isConstructCall());
|
| - } else if (i == 2) {
|
| - assertTrue(frame.isConstructCall());
|
| - } else {
|
| - assertFalse(frame.isConstructCall());
|
| - }
|
| -
|
| - if (i > 4) {
|
| - assertFalse(frame.isOptimizedFrame());
|
| - assertFalse(frame.isInlinedFrame());
|
| - }
|
| }
|
|
|
| // Indicate that all was processed.
|
|
|