diff --git a/idea/tests/org/jetbrains/kotlin/idea/debugger/AbstractKotlinSteppingTest.kt b/idea/tests/org/jetbrains/kotlin/idea/debugger/AbstractKotlinSteppingTest.kt index 233b8feeecd..1222e28a895 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/debugger/AbstractKotlinSteppingTest.kt +++ b/idea/tests/org/jetbrains/kotlin/idea/debugger/AbstractKotlinSteppingTest.kt @@ -16,19 +16,17 @@ package org.jetbrains.kotlin.idea.debugger -import com.intellij.debugger.engine.SuspendContextImpl -import org.jetbrains.kotlin.idea.debugger.KotlinSmartStepIntoHandler.KotlinMethodSmartStepTarget -import org.jetbrains.kotlin.idea.debugger.KotlinSmartStepIntoHandler.KotlinBasicStepMethodFilter import com.intellij.debugger.DebuggerManagerEx -import com.intellij.debugger.ui.breakpoints.LineBreakpoint import com.intellij.debugger.actions.MethodSmartStepTarget import com.intellij.debugger.engine.BasicStepMethodFilter -import org.jetbrains.kotlin.idea.util.application.runReadAction -import org.jetbrains.kotlin.test.InTextDirectivesUtils.* +import com.intellij.debugger.engine.SuspendContextImpl +import com.intellij.debugger.ui.breakpoints.LineBreakpoint import com.intellij.openapi.util.io.FileUtil +import org.jetbrains.kotlin.idea.debugger.KotlinSmartStepIntoHandler.KotlinBasicStepMethodFilter +import org.jetbrains.kotlin.idea.debugger.KotlinSmartStepIntoHandler.KotlinMethodSmartStepTarget +import org.jetbrains.kotlin.idea.util.application.runReadAction +import org.jetbrains.kotlin.test.InTextDirectivesUtils.getPrefixedInt import java.io.File -import kotlin.properties.Delegates -import com.intellij.debugger.settings.DebuggerSettings public abstract class AbstractKotlinSteppingTest : KotlinDebuggerTestBase() { protected fun doStepIntoTest(path: String) { @@ -51,7 +49,7 @@ public abstract class AbstractKotlinSteppingTest : KotlinDebuggerTestBase() { fun repeat(indexPrefix: String, f: SuspendContextImpl.() -> Unit) { for (i in 1..(getPrefixedInt(fileText, indexPrefix) ?: 1)) { - onBreakpoint(f) + doOnBreakpoint(f) } } @@ -74,7 +72,7 @@ public abstract class AbstractKotlinSteppingTest : KotlinDebuggerTestBase() { createDebugProcess(path) for (i in 1..(getPrefixedInt(fileText, "// $command: ") ?: 1)) { - onBreakpoint { + doOnBreakpoint { when(command) { "STEP_INTO" -> stepInto() "STEP_OUT" -> stepOut() diff --git a/idea/tests/org/jetbrains/kotlin/idea/debugger/KotlinDebuggerTestBase.kt b/idea/tests/org/jetbrains/kotlin/idea/debugger/KotlinDebuggerTestBase.kt index 40cae78eb39..ab4ec8306a8 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/debugger/KotlinDebuggerTestBase.kt +++ b/idea/tests/org/jetbrains/kotlin/idea/debugger/KotlinDebuggerTestBase.kt @@ -18,45 +18,39 @@ package org.jetbrains.kotlin.idea.debugger import com.intellij.debugger.DebuggerInvocationUtil import com.intellij.debugger.DebuggerManagerEx -import com.intellij.debugger.engine.DebugProcessImpl -import com.intellij.debugger.engine.SuspendContextImpl -import com.intellij.debugger.engine.MethodFilter -import org.jetbrains.kotlin.idea.util.application.runReadAction -import com.intellij.debugger.impl.PositionUtil -import com.intellij.execution.process.ProcessOutputTypes -import com.intellij.openapi.roots.libraries.LibraryUtil -import org.jetbrains.kotlin.idea.test.JetJdkAndLibraryProjectDescriptor -import com.intellij.openapi.roots.JdkOrderEntry -import com.intellij.openapi.util.io.FileUtil import com.intellij.debugger.SourcePosition -import com.intellij.debugger.settings.DebuggerSettings -import kotlin.properties.Delegates -import org.jetbrains.kotlin.test.InTextDirectivesUtils.findStringWithPrefixes -import kotlin.properties.Delegates +import com.intellij.debugger.engine.DebugProcessImpl +import com.intellij.debugger.engine.MethodFilter +import com.intellij.debugger.engine.SuspendContextImpl import com.intellij.debugger.engine.evaluation.EvaluationContextImpl import com.intellij.debugger.impl.DebuggerContextImpl +import com.intellij.debugger.impl.PositionUtil +import com.intellij.debugger.settings.DebuggerSettings import com.intellij.debugger.ui.breakpoints.BreakpointManager -import com.intellij.debugger.ui.breakpoints.FieldBreakpoint -import com.intellij.debugger.ui.breakpoints.JavaFieldBreakpointType -import com.intellij.openapi.application.ApplicationManager +import com.intellij.execution.process.ProcessOutputTypes import com.intellij.openapi.application.ModalityState -import com.intellij.openapi.editor.Document -import com.intellij.openapi.fileEditor.FileDocumentManager -import com.intellij.openapi.util.Computable +import com.intellij.openapi.roots.JdkOrderEntry +import com.intellij.openapi.roots.libraries.LibraryUtil +import com.intellij.openapi.util.io.FileUtil import com.intellij.psi.PsiDocumentManager import com.intellij.psi.PsiFile import com.intellij.psi.PsiManager import com.intellij.psi.search.FilenameIndex import com.intellij.xdebugger.XDebuggerManager import com.intellij.xdebugger.XDebuggerUtil -import com.intellij.xdebugger.breakpoints.* -import org.jetbrains.java.debugger.breakpoints.properties.JavaFieldBreakpointProperties +import com.intellij.xdebugger.breakpoints.XBreakpoint +import com.intellij.xdebugger.breakpoints.XBreakpointProperties +import com.intellij.xdebugger.breakpoints.XBreakpointType +import com.intellij.xdebugger.breakpoints.XLineBreakpointType import org.jetbrains.kotlin.idea.debugger.breakpoints.KotlinFieldBreakpoint import org.jetbrains.kotlin.idea.debugger.breakpoints.KotlinFieldBreakpointType +import org.jetbrains.kotlin.idea.test.JetJdkAndLibraryProjectDescriptor +import org.jetbrains.kotlin.idea.util.application.runReadAction import org.jetbrains.kotlin.idea.util.application.runWriteAction -import org.jetbrains.kotlin.psi.JetFile import org.jetbrains.kotlin.test.InTextDirectivesUtils +import org.jetbrains.kotlin.test.InTextDirectivesUtils.findStringWithPrefixes import javax.swing.SwingUtilities +import kotlin.properties.Delegates abstract class KotlinDebuggerTestBase : KotlinDebuggerTestCase() { private var oldSettings: DebuggerSettings by Delegates.notNull() @@ -115,11 +109,11 @@ abstract class KotlinDebuggerTestBase : KotlinDebuggerTestCase() { protected val dp: DebugProcessImpl get() = getDebugProcess() ?: throw AssertionError("createLocalProcess() should be called before getDebugProcess()") - protected fun onBreakpoint(doOnBreakpoint: SuspendContextImpl.() -> Unit) { + public fun doOnBreakpoint(action: SuspendContextImpl.() -> Unit) { super.onBreakpoint { initContexts(it) it.printContext() - it.doOnBreakpoint() + it.action() } } @@ -174,7 +168,7 @@ abstract class KotlinDebuggerTestBase : KotlinDebuggerTestCase() { } protected fun finish() { - onBreakpoint { + doOnBreakpoint { resume(this) } } diff --git a/idea/tests/org/jetbrains/kotlin/idea/debugger/evaluate/AbstractKotlinEvaluateExpressionTest.kt b/idea/tests/org/jetbrains/kotlin/idea/debugger/evaluate/AbstractKotlinEvaluateExpressionTest.kt index 62466ef1f9e..96f9d9f8407 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/debugger/evaluate/AbstractKotlinEvaluateExpressionTest.kt +++ b/idea/tests/org/jetbrains/kotlin/idea/debugger/evaluate/AbstractKotlinEvaluateExpressionTest.kt @@ -113,11 +113,11 @@ public abstract class AbstractKotlinEvaluateExpressionTest : KotlinDebuggerTestB val count = InTextDirectivesUtils.getPrefixedInt(fileText, "// STEP_INTO: ") ?: 0 if (count > 0) { for (i in 1..count) { - onBreakpoint { stepInto() } + doOnBreakpoint { stepInto() } } } - onBreakpoint { + doOnBreakpoint { val exceptions = linkedMapOf() try { for ((expression, expected) in expressions) { @@ -160,7 +160,7 @@ public abstract class AbstractKotlinEvaluateExpressionTest : KotlinDebuggerTestB val exceptions = linkedMapOf() for ((expression, expected) in expressions) { mayThrow(exceptions, expression) { - onBreakpoint { + doOnBreakpoint { try { evaluate(expression, CodeFragmentKind.EXPRESSION, expected) }