1 // Copyright 2014 the V8 project authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 // Flags: --expose-debug-as debug 6 7 'use strict'; 8 9 var Debug = debug.Debug 10 11 var done = false; 12 var stepCount = 0; 13 14 function listener(event, execState, eventData, data) { 15 if (event == Debug.DebugEvent.Break) { 16 if (!done) { 17 execState.prepareStep(Debug.StepAction.StepIn); 18 var s = execState.frame().sourceLineText(); 19 assertTrue(s.indexOf('// ' + stepCount + '.') !== -1); 20 stepCount++; 21 } 22 } 23 }; 24 25 Debug.setListener(listener); 26 27 function GetBase() { 28 var x = 1; // 1. 29 var y = 2; // 2. 30 done = true; // 3. 31 return null; 32 } 33 34 function f() { 35 class Derived extends GetBase() {} // 0. 36 } 37 38 var bp = Debug.setBreakPoint(f, 0); 39 f(); 40 assertEquals(4, stepCount); 41 42 Debug.setListener(null); 43