Skip to content

Commit d348fe7

Browse files
haeter525sidra-asa
authored andcommitted
Test parsing for various types of classes
1 parent d537dac commit d348fe7

File tree

1 file changed

+38
-1
lines changed

1 file changed

+38
-1
lines changed

tests/core/test_apkinfo.py

Lines changed: 38 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -175,7 +175,7 @@ def test_all_methods(self, apkinfo):
175175

176176
assert test_custom_method.issubset(apkinfo.all_methods)
177177

178-
def test_find_method(self, apkinfo):
178+
def test_find_method_in_regular_class(self, apkinfo):
179179
result = apkinfo.find_method(
180180
"Ljava/lang/reflect/Field;", "setAccessible", "(Z)V"
181181
)
@@ -185,6 +185,43 @@ def test_find_method(self, apkinfo):
185185
assert str(result.name) == "setAccessible"
186186
assert str(result.descriptor) == "(Z)V"
187187

188+
def test_find_method_in_inner_class(self, apkinfo):
189+
result = apkinfo.find_method(
190+
"Landroid/support/v4/accessibilityservice/Accessibility"
191+
+ "ServiceInfoCompat$AccessibilityServiceInfoVersionImpl;",
192+
"getId",
193+
"(Landroid/accessibilityservice/AccessibilityServiceInfo;)"
194+
+ "Ljava/lang/String;",
195+
)
196+
197+
assert isinstance(result, MethodObject)
198+
assert (
199+
str(result.class_name)
200+
== "Landroid/support/v4/accessibilityservice/Accessibility"
201+
+ "ServiceInfoCompat$AccessibilityServiceInfoVersionImpl;"
202+
)
203+
assert str(result.name) == "getId"
204+
assert (
205+
str(result.descriptor)
206+
== "(Landroid/accessibilityservice/AccessibilityServiceInfo;)"
207+
+ "Ljava/lang/String;"
208+
)
209+
210+
def test_find_method_in_anonymous_class(self, apkinfo):
211+
result = apkinfo.find_method(
212+
"Landroid/support/v4/view/AccessibilityDelegateCompatIcs$1;",
213+
"sendAccessibilityEvent",
214+
"(Landroid/view/View; I)V",
215+
)
216+
217+
assert isinstance(result, MethodObject)
218+
assert (
219+
str(result.class_name)
220+
== "Landroid/support/v4/view/AccessibilityDelegateCompatIcs$1;"
221+
)
222+
assert str(result.name) == "sendAccessibilityEvent"
223+
assert str(result.descriptor) == "(Landroid/view/View; I)V"
224+
188225
def test_upperfunc(self, apkinfo):
189226
api = apkinfo.find_method(
190227
"Lcom/example/google/service/ContactsHelper;",

0 commit comments

Comments
 (0)