From 84ef6d0049b3bb88099d1217c946396ac8f0e4b9 Mon Sep 17 00:00:00 2001 From: Ahmed Ashour Date: Mon, 22 Apr 2019 16:53:27 +0300 Subject: [PATCH] test: add test case for #596 (PR #619) --- .../conditions/TestBooleanToInt2.java | 32 +++++++++++++++++++ .../smali/conditions/TestBooleanToInt2.smali | 20 ++++++++++++ 2 files changed, 52 insertions(+) create mode 100644 jadx-core/src/test/java/jadx/tests/integration/conditions/TestBooleanToInt2.java create mode 100644 jadx-core/src/test/smali/conditions/TestBooleanToInt2.smali diff --git a/jadx-core/src/test/java/jadx/tests/integration/conditions/TestBooleanToInt2.java b/jadx-core/src/test/java/jadx/tests/integration/conditions/TestBooleanToInt2.java new file mode 100644 index 00000000..46927ae6 --- /dev/null +++ b/jadx-core/src/test/java/jadx/tests/integration/conditions/TestBooleanToInt2.java @@ -0,0 +1,32 @@ +package jadx.tests.integration.conditions; + +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.containsString; + +import org.junit.jupiter.api.Test; + +import jadx.NotYetImplemented; +import jadx.core.dex.nodes.ClassNode; +import jadx.tests.api.SmaliTest; + +public class TestBooleanToInt2 extends SmaliTest { + + /** + private boolean showConsent; + + public void write(int b) { + } + + public void writeToParcel(TestBooleanToInt2 testBooleanToInt2) { + testBooleanToInt2.write(this.showConsent ? 1 : 0); + } + */ + @Test + @NotYetImplemented + public void test() { + ClassNode cls = getClassNodeFromSmaliWithPath("conditions", "TestBooleanToInt2"); + String code = cls.getCode().toString(); + + assertThat(code, containsString("write(this.showConsent ? 1 : 0);")); + } +} diff --git a/jadx-core/src/test/smali/conditions/TestBooleanToInt2.smali b/jadx-core/src/test/smali/conditions/TestBooleanToInt2.smali new file mode 100644 index 00000000..33d92325 --- /dev/null +++ b/jadx-core/src/test/smali/conditions/TestBooleanToInt2.smali @@ -0,0 +1,20 @@ +.class public LTestBooleanToInt2; +.super Ljava/lang/Object; + +.field private showConsent:Z + +.method public writeToParcel(LTestBooleanToInt2;)V + .locals 0 + + iget-boolean p1, p0, LTestBooleanToInt2;->showConsent:Z + + invoke-virtual {p0, p1}, LTestBooleanToInt2;->write(I)V + + return-void +.end method + +.method public write(I)V + .locals 0 + + return-void +.end method -- GitLab