1// Copyright 2016 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: --harmony-async-await --allow-natives-syntax --expose-debug-as debug 6 7// Get the Debug object exposed from the debug context global object. 8Debug = debug.Debug 9 10listenerComplete = false; 11breakPointCount = 0; 12 13async function f() { 14 await (async function() { var a = "a"; await 1; debugger; })(); 15 16 var b = "b"; 17 18 assertTrue(listenerDone); 19 assertFalse(exception); 20 assertEquals(1, breakpointCount); 21} 22 23function listener(event, exec_state, event_data, data) { 24 try { 25 if (event != Debug.DebugEvent.Break) return; 26 27 breakpointCount++; 28 listenerDone = true; 29 assertEquals("a", exec_state.frame(0).evaluate("a")); 30 assertEquals("b", exec_state.frame(1).evaluate("b")); 31 assertEquals("c", exec_state.frame(2).evaluate("c")); 32 } catch (e) { 33 exception = e; 34 }; 35}; 36 37Debug.setListener(listener); 38 39var c = "c"; 40f(); 41