void () { runPythonTest(new PySmartStepIntoDebuggerTask( "test_smart_step_into_chain.py") { @Override public void before() { toggleBreakpoint(6); } @Override public void testing() throws Exception { waitForPause(); assertSmartStepIntoVariants("f", "f", "f"); smartStepInto("f", 0); waitForPause(); eval("x").hasValue("1"); stepOver(); waitForPause(); assertSmartStepIntoVariants("f", "f"); smartStepInto("f", 1); waitForPause(); eval("x").hasValue("2"); stepOver(); waitForPause(); assertSmartStepIntoVariants("f"); smartStepInto("f", 2); waitForPause(); eval("x").hasValue("3"); stepOver(); waitForPause(); resume(); waitForTerminate(); } }); }