From 6456f4ed98ed3cf2231874ca7104d81757ac5a42 Mon Sep 17 00:00:00 2001 From: Nikolay Krasko Date: Tue, 12 Dec 2017 19:32:07 +0300 Subject: [PATCH] Test step into for Java constructor with SAM conversion Additional test for KT-21538 #KT-21538 Fixed --- .../debugger/tinyApp/src/forTests/MyJavaClass.java | 5 +++++ .../stepIntoAndSmartStepInto/javaSamConstructor.kt | 8 ++++++++ .../stepIntoAndSmartStepInto/javaSamConstructor.out | 8 ++++++++ .../idea/debugger/KotlinSteppingTestGenerated.java | 12 ++++++++++++ 4 files changed, 33 insertions(+) create mode 100644 idea/testData/debugger/tinyApp/src/stepping/stepIntoAndSmartStepInto/javaSamConstructor.kt create mode 100644 idea/testData/debugger/tinyApp/src/stepping/stepIntoAndSmartStepInto/javaSamConstructor.out diff --git a/idea/testData/debugger/tinyApp/src/forTests/MyJavaClass.java b/idea/testData/debugger/tinyApp/src/forTests/MyJavaClass.java index a411a20df4e..8134254faf9 100644 --- a/idea/testData/debugger/tinyApp/src/forTests/MyJavaClass.java +++ b/idea/testData/debugger/tinyApp/src/forTests/MyJavaClass.java @@ -54,4 +54,9 @@ public class MyJavaClass { public void other(Runnable runnable) { runnable.run(); } + + public MyJavaClass() {} + + // Constructor with sam conversion for step into test + public MyJavaClass(Runnable runnable) {} } diff --git a/idea/testData/debugger/tinyApp/src/stepping/stepIntoAndSmartStepInto/javaSamConstructor.kt b/idea/testData/debugger/tinyApp/src/stepping/stepIntoAndSmartStepInto/javaSamConstructor.kt new file mode 100644 index 00000000000..ddbcfbc57c2 --- /dev/null +++ b/idea/testData/debugger/tinyApp/src/stepping/stepIntoAndSmartStepInto/javaSamConstructor.kt @@ -0,0 +1,8 @@ +package javaSamConstructor + +import forTests.MyJavaClass + +fun main(args: Array) { + //Breakpoint! + MyJavaClass { /* do nothing*/ } +} \ No newline at end of file diff --git a/idea/testData/debugger/tinyApp/src/stepping/stepIntoAndSmartStepInto/javaSamConstructor.out b/idea/testData/debugger/tinyApp/src/stepping/stepIntoAndSmartStepInto/javaSamConstructor.out new file mode 100644 index 00000000000..702a9f22823 --- /dev/null +++ b/idea/testData/debugger/tinyApp/src/stepping/stepIntoAndSmartStepInto/javaSamConstructor.out @@ -0,0 +1,8 @@ +LineBreakpoint created at javaSamConstructor.kt:7 +Run Java +Connected to the target VM +javaSamConstructor.kt:7 +MyJavaClass.java:61 +Disconnected from the target VM + +Process finished with exit code 0 diff --git a/idea/tests/org/jetbrains/kotlin/idea/debugger/KotlinSteppingTestGenerated.java b/idea/tests/org/jetbrains/kotlin/idea/debugger/KotlinSteppingTestGenerated.java index a94e89bc49f..baaedbfb16a 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/debugger/KotlinSteppingTestGenerated.java +++ b/idea/tests/org/jetbrains/kotlin/idea/debugger/KotlinSteppingTestGenerated.java @@ -62,6 +62,12 @@ public class KotlinSteppingTestGenerated extends AbstractKotlinSteppingTest { doStepIntoTest(fileName); } + @TestMetadata("javaSamConstructor.kt") + public void testJavaSamConstructor() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("idea/testData/debugger/tinyApp/src/stepping/stepIntoAndSmartStepInto/javaSamConstructor.kt"); + doStepIntoTest(fileName); + } + @TestMetadata("javaSamFunction.kt") public void testJavaSamFunction() throws Exception { String fileName = KotlinTestUtils.navigationMetadata("idea/testData/debugger/tinyApp/src/stepping/stepIntoAndSmartStepInto/javaSamFunction.kt"); @@ -155,6 +161,12 @@ public class KotlinSteppingTestGenerated extends AbstractKotlinSteppingTest { doSmartStepIntoTest(fileName); } + @TestMetadata("javaSamConstructor.kt") + public void testJavaSamConstructor() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("idea/testData/debugger/tinyApp/src/stepping/stepIntoAndSmartStepInto/javaSamConstructor.kt"); + doSmartStepIntoTest(fileName); + } + @TestMetadata("javaSamFunction.kt") public void testJavaSamFunction() throws Exception { String fileName = KotlinTestUtils.navigationMetadata("idea/testData/debugger/tinyApp/src/stepping/stepIntoAndSmartStepInto/javaSamFunction.kt");