'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();
assertTrue(s.indexOf('// ' + stepCount + '.') !== -1);
stepCount++;
}
}
};
Debug.setListener(listener);
function GetBase() {
var x = 1;
var y = 2;
done = true;
return null;
}
function f() {
class Derived extends GetBase() {}
}
var bp = Debug.setBreakPoint(f, 1, 20);
f();
assertEquals(4, stepCount);
Debug.setListener(null);