void () { runPythonTest(new PySmartStepIntoDebuggerTask("test_smart_step_into.py") { @Override public void before() { toggleBreakpoint(1); } @Override public void testing() throws Exception { waitForPause(); assertSmartStepIntoVariants("bar", "baz", "bar", "barbaz", "bar", "barbaz", "bar", "baz", "add"); stepInto(); waitForPause(); stepInto(); waitForPause(); stepInto(); waitForPause(); assertSmartStepIntoVariants("baz", "bar", "barbaz", "bar", "barbaz", "bar", "baz", "add"); smartStepInto("barbaz", 1); waitForPause(); eval("i").hasValue("42"); stepInto(); waitForPause(); assertSmartStepIntoVariants("bar", "baz", "add"); stepInto(); waitForPause(); stepInto(); waitForPause(); stepInto(); waitForPause(); assertSmartStepIntoVariants("baz", "add"); smartStepInto("baz", 1); waitForPause(); smartStepInto("bar", 1); waitForPause(); stepInto(); waitForPause(); stepInto(); waitForPause(); stepInto(); waitForPause(); stepInto(); waitForPause(); assertSmartStepIntoVariants("add"); stepOver(); waitForPause(); stepOver(); waitForPause(); stepInto(); waitForPause(); assertSmartStepIntoVariants("bar", "baz", "bar", "barbaz", "bar", "barbaz", "bar", "baz", "add"); resume(); waitForTerminate(); } }); }