diff --git a/jadx-core/src/test/java/jadx/tests/api/SmaliTest.java b/jadx-core/src/test/java/jadx/tests/api/SmaliTest.java index 55b21b897..2cdd5473b 100644 --- a/jadx-core/src/test/java/jadx/tests/api/SmaliTest.java +++ b/jadx-core/src/test/java/jadx/tests/api/SmaliTest.java @@ -42,11 +42,6 @@ public abstract class SmaliTest extends IntegrationTest { return getClassNodeFromSmali(getTestPkg() + File.separatorChar + getTestName(), fullClsName); } - @Deprecated - protected ClassNode getClassNodeFromSmali(String clsName) { - return getClassNodeFromSmali(clsName, clsName); - } - protected ClassNode getClassNodeFromSmaliWithPath(String path, String clsName) { return getClassNodeFromSmali(path + File.separatorChar + clsName, clsName); } diff --git a/jadx-core/src/test/java/jadx/tests/integration/loops/TestBreakInLoop3.java b/jadx-core/src/test/java/jadx/tests/integration/loops/TestBreakInLoop3.java index 418026edf..01d8b6b37 100644 --- a/jadx-core/src/test/java/jadx/tests/integration/loops/TestBreakInLoop3.java +++ b/jadx-core/src/test/java/jadx/tests/integration/loops/TestBreakInLoop3.java @@ -3,8 +3,6 @@ package jadx.tests.integration.loops; import java.io.File; import java.io.FileOutputStream; -import org.junit.jupiter.api.Test; - import jadx.NotYetImplemented; import jadx.tests.api.IntegrationTest; @@ -53,7 +51,7 @@ public class TestBreakInLoop3 extends IntegrationTest { } } - @Test + // @Test @NotYetImplemented public void test43() throws Exception { getClassNode(TestCls.class); diff --git a/jadx-core/src/test/java/jadx/tests/integration/TestArgInline.java b/jadx-core/src/test/java/jadx/tests/integration/others/TestArgInline.java similarity index 94% rename from jadx-core/src/test/java/jadx/tests/integration/TestArgInline.java rename to jadx-core/src/test/java/jadx/tests/integration/others/TestArgInline.java index ad41bdfbb..29a205131 100644 --- a/jadx-core/src/test/java/jadx/tests/integration/TestArgInline.java +++ b/jadx-core/src/test/java/jadx/tests/integration/others/TestArgInline.java @@ -1,4 +1,4 @@ -package jadx.tests.integration; +package jadx.tests.integration.others; import org.junit.jupiter.api.Test; diff --git a/jadx-core/src/test/java/jadx/tests/integration/TestClassGen.java b/jadx-core/src/test/java/jadx/tests/integration/others/TestClassGen.java similarity index 96% rename from jadx-core/src/test/java/jadx/tests/integration/TestClassGen.java rename to jadx-core/src/test/java/jadx/tests/integration/others/TestClassGen.java index 9852a936d..954cd3c87 100644 --- a/jadx-core/src/test/java/jadx/tests/integration/TestClassGen.java +++ b/jadx-core/src/test/java/jadx/tests/integration/others/TestClassGen.java @@ -1,4 +1,4 @@ -package jadx.tests.integration; +package jadx.tests.integration.others; import org.junit.jupiter.api.Test; diff --git a/jadx-core/src/test/java/jadx/tests/integration/others/TestConstructor.java b/jadx-core/src/test/java/jadx/tests/integration/others/TestConstructor.java new file mode 100644 index 000000000..2754f8a52 --- /dev/null +++ b/jadx-core/src/test/java/jadx/tests/integration/others/TestConstructor.java @@ -0,0 +1,30 @@ +package jadx.tests.integration.others; + +import org.junit.jupiter.api.Test; + +import jadx.tests.api.SmaliTest; + +import static jadx.tests.api.utils.assertj.JadxAssertions.assertThat; + +public class TestConstructor extends SmaliTest { + // @formatter:off + /* + private SomeObject test(double r23, double r25, SomeObject r27) { + SomeObject r17 = new SomeObject + r0 = r17 + r1 = r27 + r0.(r1) + return r17 + } + */ + // @formatter:on + + @Test + public void test() { + disableCompilation(); + assertThat(getClassNodeFromSmali()) + .code() + .containsOne("new SomeObject(arg3);") + .doesNotContain("= someObject"); + } +} diff --git a/jadx-core/src/test/java/jadx/tests/integration/TestDuplicateCast.java b/jadx-core/src/test/java/jadx/tests/integration/others/TestDuplicateCast.java similarity index 97% rename from jadx-core/src/test/java/jadx/tests/integration/TestDuplicateCast.java rename to jadx-core/src/test/java/jadx/tests/integration/others/TestDuplicateCast.java index 147e6fab1..22bf801ce 100644 --- a/jadx-core/src/test/java/jadx/tests/integration/TestDuplicateCast.java +++ b/jadx-core/src/test/java/jadx/tests/integration/others/TestDuplicateCast.java @@ -1,4 +1,4 @@ -package jadx.tests.integration; +package jadx.tests.integration.others; import java.util.List; diff --git a/jadx-core/src/test/java/jadx/tests/integration/TestFloatValue.java b/jadx-core/src/test/java/jadx/tests/integration/others/TestFloatValue.java similarity index 95% rename from jadx-core/src/test/java/jadx/tests/integration/TestFloatValue.java rename to jadx-core/src/test/java/jadx/tests/integration/others/TestFloatValue.java index f2e0350c8..4d0de4a3b 100644 --- a/jadx-core/src/test/java/jadx/tests/integration/TestFloatValue.java +++ b/jadx-core/src/test/java/jadx/tests/integration/others/TestFloatValue.java @@ -1,4 +1,4 @@ -package jadx.tests.integration; +package jadx.tests.integration.others; import org.junit.jupiter.api.Test; diff --git a/jadx-core/src/test/java/jadx/tests/integration/others/TestInlineVarArg.java b/jadx-core/src/test/java/jadx/tests/integration/others/TestInlineVarArg.java new file mode 100644 index 000000000..10100b858 --- /dev/null +++ b/jadx-core/src/test/java/jadx/tests/integration/others/TestInlineVarArg.java @@ -0,0 +1,18 @@ +package jadx.tests.integration.others; + +import org.junit.jupiter.api.Test; + +import jadx.tests.api.SmaliTest; + +import static jadx.tests.api.utils.assertj.JadxAssertions.assertThat; + +public class TestInlineVarArg extends SmaliTest { + + @Test + public void test() { + noDebugInfo(); + assertThat(getClassNodeFromSmali()) + .code() + .containsOne("f(\"a\", \"b\", \"c\");"); + } +} diff --git a/jadx-core/src/test/java/jadx/tests/integration/others/TestN21.java b/jadx-core/src/test/java/jadx/tests/integration/others/TestN21.java new file mode 100644 index 000000000..cc3d5f5aa --- /dev/null +++ b/jadx-core/src/test/java/jadx/tests/integration/others/TestN21.java @@ -0,0 +1,17 @@ +package jadx.tests.integration.others; + +import org.junit.jupiter.api.Test; + +import jadx.tests.api.SmaliTest; + +import static jadx.tests.api.utils.assertj.JadxAssertions.assertThat; + +public class TestN21 extends SmaliTest { + + @Test + public void test() { + assertThat(getClassNodeFromSmali()) + .code() + .countString(2, "while ("); + } +} diff --git a/jadx-core/src/test/java/jadx/tests/integration/TestRedundantBrackets.java b/jadx-core/src/test/java/jadx/tests/integration/others/TestRedundantBrackets.java similarity index 97% rename from jadx-core/src/test/java/jadx/tests/integration/TestRedundantBrackets.java rename to jadx-core/src/test/java/jadx/tests/integration/others/TestRedundantBrackets.java index 924e9bfbc..3c1f35daf 100644 --- a/jadx-core/src/test/java/jadx/tests/integration/TestRedundantBrackets.java +++ b/jadx-core/src/test/java/jadx/tests/integration/others/TestRedundantBrackets.java @@ -1,4 +1,4 @@ -package jadx.tests.integration; +package jadx.tests.integration.others; import org.junit.jupiter.api.Test; diff --git a/jadx-core/src/test/java/jadx/tests/integration/TestRedundantReturn.java b/jadx-core/src/test/java/jadx/tests/integration/others/TestRedundantReturn.java similarity index 94% rename from jadx-core/src/test/java/jadx/tests/integration/TestRedundantReturn.java rename to jadx-core/src/test/java/jadx/tests/integration/others/TestRedundantReturn.java index f08cf9f9e..4f4ac6abb 100644 --- a/jadx-core/src/test/java/jadx/tests/integration/TestRedundantReturn.java +++ b/jadx-core/src/test/java/jadx/tests/integration/others/TestRedundantReturn.java @@ -1,4 +1,4 @@ -package jadx.tests.integration; +package jadx.tests.integration.others; import org.junit.jupiter.api.Test; diff --git a/jadx-core/src/test/java/jadx/tests/integration/TestReturnWrapping.java b/jadx-core/src/test/java/jadx/tests/integration/others/TestReturnWrapping.java similarity index 97% rename from jadx-core/src/test/java/jadx/tests/integration/TestReturnWrapping.java rename to jadx-core/src/test/java/jadx/tests/integration/others/TestReturnWrapping.java index 763e3fd77..222de3078 100644 --- a/jadx-core/src/test/java/jadx/tests/integration/TestReturnWrapping.java +++ b/jadx-core/src/test/java/jadx/tests/integration/others/TestReturnWrapping.java @@ -1,4 +1,4 @@ -package jadx.tests.integration; +package jadx.tests.integration.others; import org.junit.jupiter.api.Test; diff --git a/jadx-core/src/test/java/jadx/tests/integration/TestStaticFieldsInit.java b/jadx-core/src/test/java/jadx/tests/integration/others/TestStaticFieldsInit.java similarity index 96% rename from jadx-core/src/test/java/jadx/tests/integration/TestStaticFieldsInit.java rename to jadx-core/src/test/java/jadx/tests/integration/others/TestStaticFieldsInit.java index 4a27a18ed..2406a25bf 100644 --- a/jadx-core/src/test/java/jadx/tests/integration/TestStaticFieldsInit.java +++ b/jadx-core/src/test/java/jadx/tests/integration/others/TestStaticFieldsInit.java @@ -1,4 +1,4 @@ -package jadx.tests.integration; +package jadx.tests.integration.others; import org.junit.jupiter.api.Test; diff --git a/jadx-core/src/test/java/jadx/tests/integration/TestStaticMethod.java b/jadx-core/src/test/java/jadx/tests/integration/others/TestStaticMethod.java similarity index 93% rename from jadx-core/src/test/java/jadx/tests/integration/TestStaticMethod.java rename to jadx-core/src/test/java/jadx/tests/integration/others/TestStaticMethod.java index 7ee977c7e..29330cd96 100644 --- a/jadx-core/src/test/java/jadx/tests/integration/TestStaticMethod.java +++ b/jadx-core/src/test/java/jadx/tests/integration/others/TestStaticMethod.java @@ -1,4 +1,4 @@ -package jadx.tests.integration; +package jadx.tests.integration.others; import org.junit.jupiter.api.Test; diff --git a/jadx-core/src/test/java/jadx/tests/integration/TestWrongCode.java b/jadx-core/src/test/java/jadx/tests/integration/others/TestWrongCode.java similarity index 96% rename from jadx-core/src/test/java/jadx/tests/integration/TestWrongCode.java rename to jadx-core/src/test/java/jadx/tests/integration/others/TestWrongCode.java index 3d68dcc96..35b30a8ce 100644 --- a/jadx-core/src/test/java/jadx/tests/integration/TestWrongCode.java +++ b/jadx-core/src/test/java/jadx/tests/integration/others/TestWrongCode.java @@ -1,4 +1,4 @@ -package jadx.tests.integration; +package jadx.tests.integration.others; import org.junit.jupiter.api.Test; diff --git a/jadx-core/src/test/java/jadx/tests/smali/TestConstructor.java b/jadx-core/src/test/java/jadx/tests/smali/TestConstructor.java deleted file mode 100644 index a08e64db5..000000000 --- a/jadx-core/src/test/java/jadx/tests/smali/TestConstructor.java +++ /dev/null @@ -1,24 +0,0 @@ -package jadx.tests.smali; - -import org.junit.jupiter.api.Test; - -import jadx.core.dex.nodes.ClassNode; -import jadx.tests.api.SmaliTest; - -import static jadx.tests.api.utils.JadxMatchers.containsOne; -import static org.hamcrest.CoreMatchers.containsString; -import static org.hamcrest.CoreMatchers.not; -import static org.hamcrest.MatcherAssert.assertThat; - -public class TestConstructor extends SmaliTest { - - @Test - public void test() { - disableCompilation(); - ClassNode cls = getClassNodeFromSmali("TestConstructor"); - String code = cls.getCode().toString(); - - assertThat(code, containsOne("new SomeObject(arg3);")); - assertThat(code, not(containsString("= someObject"))); - } -} diff --git a/jadx-core/src/test/java/jadx/tests/smali/TestInlineVarArg.java b/jadx-core/src/test/java/jadx/tests/smali/TestInlineVarArg.java deleted file mode 100644 index 0f85d0c21..000000000 --- a/jadx-core/src/test/java/jadx/tests/smali/TestInlineVarArg.java +++ /dev/null @@ -1,21 +0,0 @@ -package jadx.tests.smali; - -import org.junit.jupiter.api.Test; - -import jadx.core.dex.nodes.ClassNode; -import jadx.tests.api.SmaliTest; - -import static jadx.tests.api.utils.JadxMatchers.containsOne; -import static org.hamcrest.MatcherAssert.assertThat; - -public class TestInlineVarArg extends SmaliTest { - - @Test - public void test() { - noDebugInfo(); - ClassNode cls = getClassNodeFromSmali("TestInlineVarArg"); - String code = cls.getCode().toString(); - - assertThat(code, containsOne("f(\"a\", \"b\", \"c\");")); - } -} diff --git a/jadx-core/src/test/java/jadx/tests/smali/TestN21.java b/jadx-core/src/test/java/jadx/tests/smali/TestN21.java deleted file mode 100644 index be2070350..000000000 --- a/jadx-core/src/test/java/jadx/tests/smali/TestN21.java +++ /dev/null @@ -1,16 +0,0 @@ -package jadx.tests.smali; - -import org.junit.jupiter.api.Test; - -import jadx.core.dex.nodes.ClassNode; -import jadx.tests.api.SmaliTest; - -public class TestN21 extends SmaliTest { - - @Test - public void test() { - ClassNode cls = getClassNodeFromSmali("TestN21"); - String code = cls.getCode().toString(); - System.out.println(code); - } -} diff --git a/jadx-core/src/test/smali/TestConstructor.smali b/jadx-core/src/test/smali/others/TestConstructor.smali similarity index 87% rename from jadx-core/src/test/smali/TestConstructor.smali rename to jadx-core/src/test/smali/others/TestConstructor.smali index 0768ddd9b..1a00a2721 100644 --- a/jadx-core/src/test/smali/TestConstructor.smali +++ b/jadx-core/src/test/smali/others/TestConstructor.smali @@ -1,4 +1,4 @@ -.class public LTestConstructor; +.class public Lothers/TestConstructor; .super Ljava/lang/Object; .method private test(DDLSomeObject;)LSomeObject; @@ -20,4 +20,6 @@ .line 59 .local v17, "localSomeObject":LSomeObject; + + return-object v17 .end method diff --git a/jadx-core/src/test/smali/TestInlineVarArg.smali b/jadx-core/src/test/smali/others/TestInlineVarArg.smali similarity index 82% rename from jadx-core/src/test/smali/TestInlineVarArg.smali rename to jadx-core/src/test/smali/others/TestInlineVarArg.smali index 7c62c667d..d8eb36ecc 100644 --- a/jadx-core/src/test/smali/TestInlineVarArg.smali +++ b/jadx-core/src/test/smali/others/TestInlineVarArg.smali @@ -1,4 +1,4 @@ -.class public LTestInlineVarArg; +.class public Lothers/TestInlineVarArg; .super Ljava/lang/Object; .method public static varargs f([Ljava/lang/String;)V @@ -35,7 +35,7 @@ move-object v1, v0 - invoke-static {v1}, LTestInlineVarArg;->f([Ljava/lang/String;)V + invoke-static {v1}, Lothers/TestInlineVarArg;->f([Ljava/lang/String;)V return-void .end method diff --git a/jadx-core/src/test/smali/TestN21.smali b/jadx-core/src/test/smali/others/TestN21.smali similarity index 97% rename from jadx-core/src/test/smali/TestN21.smali rename to jadx-core/src/test/smali/others/TestN21.smali index adaea935e..2bf85fdde 100644 --- a/jadx-core/src/test/smali/TestN21.smali +++ b/jadx-core/src/test/smali/others/TestN21.smali @@ -1,4 +1,4 @@ -.class public LTestN21; +.class public Lothers/TestN21; .super Ljava/lang/Object; .method private static test([BI)I