use of jadx.core.dex.nodes.ClassNode in project jadx by skylot.
the class TestBreakWithLabel method test.
@Test
public void test() throws Exception {
ClassNode cls = getClassNode(TestCls.class);
String code = cls.getCode().toString();
assertThat(code, containsOne("loop0:"));
assertThat(code, containsOne("break loop0;"));
Method test = getReflectMethod("test", int[][].class, int.class);
int[][] testArray = { { 1, 2 }, { 3, 4 } };
assertTrue((Boolean) invoke(test, testArray, 3));
assertFalse((Boolean) invoke(test, testArray, 5));
}
use of jadx.core.dex.nodes.ClassNode in project jadx by skylot.
the class TestRFieldAccess method test.
@Test
public void test() {
ClassNode cls = getClassNode(TestRFieldAccess.class);
String code = cls.getCode().toString();
assertThat(code, countString(2, "return R.id.Button01;"));
}
use of jadx.core.dex.nodes.ClassNode in project jadx by skylot.
the class TestInvokeInCatch method test.
@Test
public void test() {
ClassNode cls = getClassNode(TestCls.class);
String code = cls.getCode().toString();
assertThat(code, containsOne("try {"));
assertThat(code, containsOne("exc();"));
assertThat(code, not(containsString("return;")));
assertThat(code, containsOne("} catch (IOException e) {"));
assertThat(code, containsOne("if (b == 1) {"));
assertThat(code, containsOne("log(TAG, \"Error: {}\", e.getMessage());"));
}
use of jadx.core.dex.nodes.ClassNode in project jadx by skylot.
the class TestArrayForEach method test.
@Test
public void test() {
ClassNode cls = getClassNode(TestCls.class);
String code = cls.getCode().toString();
assertThat(code, containsLines(2, "int sum = 0;", "for (int n : a) {", indent(1) + "sum += n;", "}", "return sum;"));
}
use of jadx.core.dex.nodes.ClassNode in project jadx by skylot.
the class TestSwitchLabels method testWithDisabledConstReplace.
@Test
public void testWithDisabledConstReplace() {
getArgs().setReplaceConsts(false);
ClassNode cls = getClassNode(TestCls.class);
String code = cls.getCode().toString();
assertThat(code, not(containsString("case CONST_ABC")));
assertThat(code, containsString("case 2748"));
assertThat(code, not(containsString("return CONST_CDE;")));
assertThat(code, containsString("return 3294;"));
cls.addInnerClass(getClassNode(TestCls.Inner.class));
assertThat(code, not(containsString("case CONST_CDE_PRIVATE")));
assertThat(code, not(containsString(".CONST_ABC;")));
}
Aggregations