| Index: test/mjsunit/es6/debug-stepnext-for.js
|
| diff --git a/test/mjsunit/es6/debug-stepnext-for.js b/test/mjsunit/es6/debug-stepnext-for.js
|
| deleted file mode 100644
|
| index d425a46b8445739a13cdd190e8e99985f553d9df..0000000000000000000000000000000000000000
|
| --- a/test/mjsunit/es6/debug-stepnext-for.js
|
| +++ /dev/null
|
| @@ -1,135 +0,0 @@
|
| -// Copyright 2014 the V8 project authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can be
|
| -// found in the LICENSE file.
|
| -
|
| -// Flags: --expose-debug-as debug --harmony
|
| -
|
| -Debug = debug.Debug;
|
| -var break_count = 0
|
| -var exception = null;
|
| -var log = []
|
| -
|
| -var s = 0;
|
| -var a = [1, 2, 3];
|
| -var b = [1, 2, 3, 4];
|
| -var null_value = null;
|
| -var i = 0;
|
| -
|
| -function f() {
|
| - "use strict";
|
| - debugger; // Break a
|
| - var j; // Break b
|
| -
|
| - for (var i in null_value) { // Break c
|
| - s += a[i];
|
| - }
|
| -
|
| - for (j in null_value) { // Break d
|
| - s += a[j];
|
| - }
|
| -
|
| - for (var i in a) { // Break e
|
| - s += a[i]; // Break E
|
| - }
|
| -
|
| - for (j in a) { // Break f
|
| - s += a[j]; // Break F
|
| - }
|
| -
|
| - for (let i in a) { // Break g
|
| - s += a[i]; // Break G
|
| - }
|
| -
|
| - for (var i of a) { // Break h
|
| - s += i; // Break H
|
| - }
|
| -
|
| - for (j of a) { // Break i
|
| - s += j; // Break I
|
| - }
|
| -
|
| - for (let i of a) { // Break j
|
| - s += i; // Break J
|
| - }
|
| -
|
| - for (var i = 0; i < 3; i++) { // Break k
|
| - s += a[i]; // Break K
|
| - }
|
| -
|
| - for (j = 0; j < 3; j++) { // Break l
|
| - s += a[j]; // Break L
|
| - }
|
| -
|
| - for (let i = 0; i < 3; i++) { // Break m
|
| - s += a[i]; // Break M
|
| - }
|
| -
|
| - for (let i of a) {} // Break n
|
| -
|
| - [1, ...a] // Break o
|
| -
|
| -} // Break y
|
| -
|
| -function listener(event, exec_state, event_data, data) {
|
| - if (event != Debug.DebugEvent.Break) return;
|
| - try {
|
| - var line = exec_state.frame(0).sourceLineText();
|
| - var col = exec_state.frame(0).sourceColumn();
|
| - print(line);
|
| - var match = line.match(/\/\/ Break (\w)$/);
|
| - assertEquals(2, match.length);
|
| - log.push(match[1] + col);
|
| - exec_state.prepareStep(Debug.StepAction.StepNext);
|
| - break_count++;
|
| - } catch (e) {
|
| - exception = e;
|
| - }
|
| -}
|
| -
|
| -Debug.setListener(listener);
|
| -f();
|
| -Debug.setListener(null); // Break z
|
| -
|
| -print("log:\n"+ JSON.stringify(log));
|
| -// The let declaration differs from var in that the loop variable
|
| -// is declared in every iteration.
|
| -// TODO(verwaest): For-of has hacky position numbers for Symbol.iterator and
|
| -// .next. Restore to proper positions once the CallPrinter can disambiguate
|
| -// based on other values.
|
| -var expected = [
|
| - // Entry
|
| - "a2",
|
| - // Empty for-in-var: get enumerable
|
| - "c16",
|
| - // Empty for-in: get enumerable
|
| - "d12",
|
| - // For-in-var: get enumerable, assign, body, assign, body, ...
|
| - "e16","e11","E4","e11","E4","e11","E4","e11",
|
| - // For-in: get enumerable, assign, body, assign, body, ...
|
| - "f12","f7","F4","f7","F4","f7","F4","f7",
|
| - // For-in-let: get enumerable, next, body, next, ...
|
| - "g16","g11","G4","g11","G4","g11","G4","g11",
|
| - // For-of-var: [Symbol.iterator](), next(), body, next(), body, ...
|
| - "h16","h13","H4","h13","H4","h13","H4","h13",
|
| - // For-of: [Symbol.iterator](), next(), body, next(), body, ...
|
| - "i12","i9","I4","i9","I4","i9","I4","i9",
|
| - // For-of-let: [Symbol.iterator](), next(), body, next(), ...
|
| - "j18","j14","J4","j14","J4","j14","J4","j14",
|
| - // For-var: init, condition, body, next, condition, body, ...
|
| - "k15","k20","K4","k26","k20","K4","k26","k20","K4","k26","k20",
|
| - // For: init, condition, body, next, condition, body, ...
|
| - "l7","l16","L4","l22","l16","L4","l22","l16","L4","l22","l16",
|
| - // For-let: init, condition, body, next, condition, body, ...
|
| - "m15","m20","M4","m26","m20","M4","m26","m20","M4","m26","m20",
|
| - // For-of, empty: [Symbol.iterator](), next() once
|
| - "n16", "n13",
|
| - // Spread: expression statement, spread
|
| - "o2", "o9",
|
| - // Exit.
|
| - "y0","z0",
|
| -]
|
| -print("expected:\n"+ JSON.stringify(expected));
|
| -
|
| -assertArrayEquals(expected, log);
|
| -assertEquals(54, s);
|
| -assertNull(exception);
|
|
|