diff --git a/test/org/jetbrains/java/decompiler/SingleClassesTest.java b/test/org/jetbrains/java/decompiler/SingleClassesTest.java index 6c1468a..927e10a 100644 --- a/test/org/jetbrains/java/decompiler/SingleClassesTest.java +++ b/test/org/jetbrains/java/decompiler/SingleClassesTest.java @@ -126,6 +126,7 @@ public class SingleClassesTest { @Test public void testPrivateClasses() { doTest("pkg/PrivateClasses"); } @Test public void testSuspendLambda() { doTest("pkg/TestSuspendLambdaKt"); } @Test public void testNamedSuspendFun2Kt() { doTest("pkg/TestNamedSuspendFun2Kt"); } + @Test public void testGenericArgs() { doTest("pkg/TestGenericArgs"); } private void doTest(String testFile, String... companionFiles) { ConsoleDecompiler decompiler = fixture.getDecompiler(); diff --git a/testData/classes/pkg/TestGenericArgs.class b/testData/classes/pkg/TestGenericArgs.class new file mode 100644 index 0000000..6462ac0 Binary files /dev/null and b/testData/classes/pkg/TestGenericArgs.class differ diff --git a/testData/results/TestGenericArgs.dec b/testData/results/TestGenericArgs.dec new file mode 100644 index 0000000..330ded5 --- /dev/null +++ b/testData/results/TestGenericArgs.dec @@ -0,0 +1,55 @@ +package pkg; + +public class TestGenericArgs { + private static void genericSingle(Class var0) { + }// 4 + + private static void genericVarArgs(Class... var0) { + }// 6 + + private static void genericArray(Class[] var0) { + }// 8 + + private static void single(Class var0) { + }// 10 + + private static void varArgs(Class... var0) { + }// 12 + + private static void array(Class[] var0) { + }// 14 +} + +class 'pkg/TestGenericArgs' { + method 'genericSingle (Ljava/lang/Class;)V' { + 0 4 + } + + method 'genericVarArgs ([Ljava/lang/Class;)V' { + 0 7 + } + + method 'genericArray ([Ljava/lang/Class;)V' { + 0 10 + } + + method 'single (Ljava/lang/Class;)V' { + 0 13 + } + + method 'varArgs ([Ljava/lang/Class;)V' { + 0 16 + } + + method 'array ([Ljava/lang/Class;)V' { + 0 19 + } +} + +Lines mapping: +4 <-> 5 +6 <-> 8 +8 <-> 11 +10 <-> 14 +12 <-> 17 +14 <-> 20 diff --git a/testData/src/pkg/TestGenericArgs.java b/testData/src/pkg/TestGenericArgs.java new file mode 100644 index 0000000..e41d3ca --- /dev/null +++ b/testData/src/pkg/TestGenericArgs.java @@ -0,0 +1,15 @@ +package pkg; + +public class TestGenericArgs { + private static void genericSingle(Class param) { } + + private static void genericVarArgs(Class... param) { } + + private static void genericArray(Class[] param) { } + + private static void single(Class param) { } + + private static void varArgs(Class... param) { } + + private static void array(Class[] param) { } +} \ No newline at end of file