@@ -38,6 +38,20 @@ def apkinfo(request, apk_path):
3838 yield apkinfo
3939
4040
41+ @pytest .fixture (
42+ scope = "function" ,
43+ params = ((AndroguardImp ), (RizinImp )),
44+ )
45+ def apkinfo_without_R2Imp (request , apk_path ):
46+ """Since R2 has some issue,
47+ create this function to skip R2 relevant test for some test functions.
48+ """
49+ Apkinfo , apk_path = request .param , apk_path
50+ apkinfo = Apkinfo (apk_path )
51+
52+ yield apkinfo
53+
54+
4155@pytest .fixture (scope = "function" )
4256def dex_file ():
4357 APK_SOURCE = (
@@ -291,7 +305,8 @@ def test_find_method(apkinfo, test_input, expected):
291305 assert isinstance (result , list )
292306 assert expect_method in result
293307
294- def test_upperfunc (self , apkinfo ):
308+ def test_upperfunc (self , apkinfo_without_R2Imp ):
309+ apkinfo = apkinfo_without_R2Imp
295310 api = apkinfo .find_method (
296311 "Lcom/example/google/service/ContactsHelper;" ,
297312 "<init>" ,
@@ -308,7 +323,8 @@ def test_upperfunc(self, apkinfo):
308323
309324 assert expect_function in upper_methods
310325
311- def test_lowerfunc (self , apkinfo ):
326+ def test_lowerfunc (self , apkinfo_without_R2Imp ):
327+ apkinfo = apkinfo_without_R2Imp
312328 method = apkinfo .find_method (
313329 "Lcom/example/google/service/WebServiceCalling;" ,
314330 "Send" ,
@@ -326,7 +342,8 @@ def test_lowerfunc(self, apkinfo):
326342
327343 assert (expect_method , expect_offset ) in upper_methods
328344
329- def test_get_method_bytecode (self , apkinfo ):
345+ def test_get_method_bytecode (self , apkinfo_without_R2Imp ):
346+ apkinfo = apkinfo_without_R2Imp
330347 expected_bytecode_list = [
331348 BytecodeObject (
332349 "iput-object" ,
@@ -366,7 +383,8 @@ def test_get_method_bytecode(self, apkinfo):
366383 for expected in expected_bytecode_list :
367384 assert expected in bytecodes
368385
369- def test_lowerfunc (self , apkinfo ):
386+ def test_lowerfunc (self , apkinfo_without_R2Imp ):
387+ apkinfo = apkinfo_without_R2Imp
370388 method = apkinfo .find_method (
371389 "Lcom/example/google/service/SMSReceiver;" ,
372390 "isContact" ,
0 commit comments