Minor: remove warnings in KotlinDebuggerTestBase
This commit is contained in:
@@ -20,7 +20,10 @@ import com.intellij.debugger.DebuggerInvocationUtil
|
|||||||
import com.intellij.debugger.SourcePosition
|
import com.intellij.debugger.SourcePosition
|
||||||
import com.intellij.debugger.actions.MethodSmartStepTarget
|
import com.intellij.debugger.actions.MethodSmartStepTarget
|
||||||
import com.intellij.debugger.actions.SmartStepTarget
|
import com.intellij.debugger.actions.SmartStepTarget
|
||||||
import com.intellij.debugger.engine.*
|
import com.intellij.debugger.engine.BasicStepMethodFilter
|
||||||
|
import com.intellij.debugger.engine.DebugProcessImpl
|
||||||
|
import com.intellij.debugger.engine.MethodFilter
|
||||||
|
import com.intellij.debugger.engine.SuspendContextImpl
|
||||||
import com.intellij.debugger.engine.evaluation.CodeFragmentKind
|
import com.intellij.debugger.engine.evaluation.CodeFragmentKind
|
||||||
import com.intellij.debugger.engine.evaluation.EvaluationContextImpl
|
import com.intellij.debugger.engine.evaluation.EvaluationContextImpl
|
||||||
import com.intellij.debugger.engine.evaluation.TextWithImportsImpl
|
import com.intellij.debugger.engine.evaluation.TextWithImportsImpl
|
||||||
@@ -42,7 +45,10 @@ import com.intellij.psi.PsiManager
|
|||||||
import com.intellij.psi.search.FilenameIndex
|
import com.intellij.psi.search.FilenameIndex
|
||||||
import com.intellij.xdebugger.XDebuggerManager
|
import com.intellij.xdebugger.XDebuggerManager
|
||||||
import com.intellij.xdebugger.XDebuggerUtil
|
import com.intellij.xdebugger.XDebuggerUtil
|
||||||
import com.intellij.xdebugger.breakpoints.*
|
import com.intellij.xdebugger.breakpoints.XBreakpointManager
|
||||||
|
import com.intellij.xdebugger.breakpoints.XBreakpointProperties
|
||||||
|
import com.intellij.xdebugger.breakpoints.XBreakpointType
|
||||||
|
import com.intellij.xdebugger.breakpoints.XLineBreakpointType
|
||||||
import com.sun.jdi.request.StepRequest
|
import com.sun.jdi.request.StepRequest
|
||||||
import org.jetbrains.java.debugger.breakpoints.properties.JavaBreakpointProperties
|
import org.jetbrains.java.debugger.breakpoints.properties.JavaBreakpointProperties
|
||||||
import org.jetbrains.java.debugger.breakpoints.properties.JavaLineBreakpointProperties
|
import org.jetbrains.java.debugger.breakpoints.properties.JavaLineBreakpointProperties
|
||||||
@@ -131,7 +137,7 @@ abstract class KotlinDebuggerTestBase : KotlinDebuggerTestCase() {
|
|||||||
get() = debugProcess ?: throw AssertionError("createLocalProcess() should be called before getDebugProcess()")
|
get() = debugProcess ?: throw AssertionError("createLocalProcess() should be called before getDebugProcess()")
|
||||||
|
|
||||||
fun doOnBreakpoint(action: SuspendContextImpl.() -> Unit) {
|
fun doOnBreakpoint(action: SuspendContextImpl.() -> Unit) {
|
||||||
super.onBreakpoint(SuspendContextRunnable {
|
super.onBreakpoint({
|
||||||
try {
|
try {
|
||||||
initContexts(it)
|
initContexts(it)
|
||||||
it.printContext()
|
it.printContext()
|
||||||
@@ -297,7 +303,7 @@ abstract class KotlinDebuggerTestBase : KotlinDebuggerTestCase() {
|
|||||||
if (comment.startsWith("//FieldWatchpoint!")) {
|
if (comment.startsWith("//FieldWatchpoint!")) {
|
||||||
val javaBreakpoint = createBreakpointOfType(
|
val javaBreakpoint = createBreakpointOfType(
|
||||||
breakpointManager,
|
breakpointManager,
|
||||||
kotlinFieldBreakpointType as XLineBreakpointType<XBreakpointProperties<*>>,
|
kotlinFieldBreakpointType,
|
||||||
lineIndex,
|
lineIndex,
|
||||||
virtualFile)
|
virtualFile)
|
||||||
if (javaBreakpoint is KotlinFieldBreakpoint) {
|
if (javaBreakpoint is KotlinFieldBreakpoint) {
|
||||||
@@ -352,7 +358,7 @@ abstract class KotlinDebuggerTestBase : KotlinDebuggerTestCase() {
|
|||||||
val kotlinLineBreakpointType = findBreakpointType(KotlinLineBreakpointType::class.java)
|
val kotlinLineBreakpointType = findBreakpointType(KotlinLineBreakpointType::class.java)
|
||||||
val javaBreakpoint = createBreakpointOfType(
|
val javaBreakpoint = createBreakpointOfType(
|
||||||
breakpointManager,
|
breakpointManager,
|
||||||
kotlinLineBreakpointType as XLineBreakpointType<XBreakpointProperties<*>>,
|
kotlinLineBreakpointType,
|
||||||
lineIndex,
|
lineIndex,
|
||||||
file.virtualFile)
|
file.virtualFile)
|
||||||
if (javaBreakpoint is LineBreakpoint<*>) {
|
if (javaBreakpoint is LineBreakpoint<*>) {
|
||||||
@@ -395,9 +401,9 @@ abstract class KotlinDebuggerTestBase : KotlinDebuggerTestCase() {
|
|||||||
return BreakpointManager.getJavaBreakpoint(xBreakpoint)
|
return BreakpointManager.getJavaBreakpoint(xBreakpoint)
|
||||||
}
|
}
|
||||||
|
|
||||||
private inline fun <reified T> findBreakpointType(javaClass: Class<T>): T {
|
@Suppress("UNCHECKED_CAST")
|
||||||
val kotlinFieldBreakpointTypeClass = javaClass as Class<out XBreakpointType<XBreakpoint<XBreakpointProperties<*>>, XBreakpointProperties<*>>>
|
private inline fun <reified T : XBreakpointType<*, *>> findBreakpointType(javaClass: Class<T>): XLineBreakpointType<XBreakpointProperties<*>> {
|
||||||
return XDebuggerUtil.getInstance().findBreakpointType(kotlinFieldBreakpointTypeClass) as T
|
return XDebuggerUtil.getInstance().findBreakpointType(javaClass) as XLineBreakpointType<XBreakpointProperties<*>>
|
||||||
}
|
}
|
||||||
|
|
||||||
protected fun createAdditionalBreakpoints(fileText: String) {
|
protected fun createAdditionalBreakpoints(fileText: String) {
|
||||||
@@ -427,7 +433,7 @@ abstract class KotlinDebuggerTestBase : KotlinDebuggerTestCase() {
|
|||||||
|
|
||||||
assert(sourceFiles.size == 1) { "One source file should be found: name = $fileName, sourceFiles = $sourceFiles" }
|
assert(sourceFiles.size == 1) { "One source file should be found: name = $fileName, sourceFiles = $sourceFiles" }
|
||||||
|
|
||||||
val runnable = Runnable() {
|
val runnable = Runnable {
|
||||||
val psiSourceFile = PsiManager.getInstance(project).findFile(sourceFiles.first())!!
|
val psiSourceFile = PsiManager.getInstance(project).findFile(sourceFiles.first())!!
|
||||||
|
|
||||||
val breakpointManager = XDebuggerManager.getInstance(myProject).breakpointManager
|
val breakpointManager = XDebuggerManager.getInstance(myProject).breakpointManager
|
||||||
|
|||||||
Reference in New Issue
Block a user