diff --git a/test/org/jetbrains/java/decompiler/SingleClassesTest.java b/test/org/jetbrains/java/decompiler/SingleClassesTest.java index fd71584..fd48f0d 100644 --- a/test/org/jetbrains/java/decompiler/SingleClassesTest.java +++ b/test/org/jetbrains/java/decompiler/SingleClassesTest.java @@ -118,6 +118,7 @@ public class SingleClassesTest { //@Test public void testUnionType() { doTest("pkg/TestUnionType"); } //@Test public void testInnerClassConstructor2() { doTest("pkg/TestInner2"); } //@Test public void testInUse() { doTest("pkg/TestInUse"); } + //@Test public void testInterfaceSuper() { doTest("pkg/TestInterfaceSuper"); } private void doTest(String testFile, String... companionFiles) { ConsoleDecompiler decompiler = fixture.getDecompiler(); diff --git a/testData/classes/pkg/TestInterfaceSuper$Impl.class b/testData/classes/pkg/TestInterfaceSuper$Impl.class new file mode 100644 index 0000000..c9be440 Binary files /dev/null and b/testData/classes/pkg/TestInterfaceSuper$Impl.class differ diff --git a/testData/classes/pkg/TestInterfaceSuper.class b/testData/classes/pkg/TestInterfaceSuper.class new file mode 100644 index 0000000..1c4504a Binary files /dev/null and b/testData/classes/pkg/TestInterfaceSuper.class differ diff --git a/testData/results/TestInterfaceSuper.dec b/testData/results/TestInterfaceSuper.dec new file mode 100644 index 0000000..a5567e2 --- /dev/null +++ b/testData/results/TestInterfaceSuper.dec @@ -0,0 +1,30 @@ +package pkg; + +public interface TestInterfaceSuper { + default void defaultMethod() { + }// 4 + + public static class Impl implements TestInterfaceSuper { + public void defaultMethod() { + TestInterfaceSuper.super.defaultMethod();// 8 + }// 9 + } +} + +class 'pkg/TestInterfaceSuper' { + method 'defaultMethod ()V' { + 0 4 + } +} + +class 'pkg/TestInterfaceSuper$Impl' { + method 'defaultMethod ()V' { + 1 8 + 4 9 + } +} + +Lines mapping: +4 <-> 5 +8 <-> 9 +9 <-> 10 diff --git a/testData/src/pkg/TestInterfaceSuper.java b/testData/src/pkg/TestInterfaceSuper.java new file mode 100644 index 0000000..02f7527 --- /dev/null +++ b/testData/src/pkg/TestInterfaceSuper.java @@ -0,0 +1,11 @@ +package pkg; + +public interface TestInterfaceSuper { + default void defaultMethod() {} + + class Impl implements TestInterfaceSuper { + public void defaultMethod() { + TestInterfaceSuper.super.defaultMethod(); + } + } +} \ No newline at end of file