Index: test/mjsunit/harmony/debug-step-into-class-extends.js |
diff --git a/test/mjsunit/harmony/debug-step-into-class-extends.js b/test/mjsunit/harmony/debug-step-into-class-extends.js |
new file mode 100644 |
index 0000000000000000000000000000000000000000..c703bebe43f396ff5f2674117abe57177f5277ce |
--- /dev/null |
+++ b/test/mjsunit/harmony/debug-step-into-class-extends.js |
@@ -0,0 +1,43 @@ |
+// 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-classes |
+ |
+'use strict'; |
+ |
+var Debug = debug.Debug |
+ |
+var done = false; |
+var stepCount = 0; |
+ |
+function listener(event, execState, eventData, data) { |
+ if (event == Debug.DebugEvent.Break) { |
+ if (!done) { |
+ execState.prepareStep(Debug.StepAction.StepInto); |
+ var s = execState.frame().sourceLineText(); |
+ print(s); |
Dmitry Lomov (no reviews)
2014/11/14 17:19:15
stray print
arv (Not doing code reviews)
2014/11/14 19:36:58
I wanted it but I'll remove it.
arv (Not doing code reviews)
2014/11/14 22:02:22
Done.
|
+ assertTrue(s.indexOf('// ' + stepCount + '.') !== -1); |
+ stepCount++; |
+ } |
+ } |
+}; |
+ |
+Debug.setListener(listener); |
+ |
+function GetBase() { |
+ var x = 1; // 1. |
+ var y = 2; // 2. |
+ done = true; // 3. |
+ return null; |
+} |
+ |
+function f() { |
+ class Derived extends GetBase() {} // 0. |
aandrey
2014/11/14 19:27:13
should it be "GetBase" instead of "GetBase()" ?
ot
arv (Not doing code reviews)
2014/11/14 19:36:58
It should be GetBase(). We are testing stepping in
|
+} |
+ |
+var bp = Debug.setBreakPoint(f, 0); |
+f(); |
+assertEquals(4, stepCount); |
+ |
+Debug.setListener(null); |