1 // Copyright 2015 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 var break_count = 0; 8 var exception = null; 9 10 function listener(event, exec_state, event_data, data) { 11 if (event != Debug.DebugEvent.Break) return; 12 try { 13 var source_line = exec_state.frame(0).sourceLineText(); 14 print(source_line); 15 exec_state.prepareStep(Debug.StepAction.StepIn); 16 break_count++; 17 } catch (e) { 18 exception = e; 19 } 20 } 21 22 var Debug = debug.Debug; 23 Debug.setListener(listener); 24 25 26 function f() { 27 this.x = 1; 28 } 29 30 function g() { 31 new f(); 32 } 33 34 Debug.setBreakPoint(g, 6, Debug.BreakPositionAlignment.BreakPosition); 35 print(Debug.showBreakPoints(g, undefined, 36 Debug.BreakPositionAlignment.BreakPosition)); 37 38 g(); 39 Debug.setListener(null); 40 41 assertEquals(6, break_count); 42 assertNull(exception); 43