Пример #1
0
    def setUpClass(cls):
        if test_dir:
            cls.test_dir = test_dir
        else:
            cls.tmp_dir = TemporaryDirectory()
            cls.test_dir = cls.tmp_dir.name

        cls._build_fixtures()
    def setUpClass(cls):
        cls.targets = targets.create_targets()

        if test_dir_base:
            cls.test_dir_base = test_dir_base
        else:
            cls.tmp_dir = TemporaryDirectory()
            cls.test_dir_base = cls.tmp_dir.name

        cls._build_fixtures(cls.target_name)
Пример #3
0
    def test_enumerate_dex_strings_buf(self):
        with TemporaryDirectory() as tmp_dir:
            smali_file = os.path.join(INPUT_DIR, 'Hello.smali')
            classes_dex = os.path.join(tmp_dir, 'classes.dex')
            self._assemble_smali(classes_dex, smali_file)

            with open(classes_dex, 'rb') as classes_dex:
                buf = classes_dex.read()

            strs = set(DexFileReader.enumerate_dex_strings_buf(buf))

            self.assertIn('hello', strs)
            self.assertIn('world', strs)
Пример #4
0
    def test_enumerate_dex_strings_apk(self):
        with TemporaryDirectory() as tmp_dir:
            smali_file = os.path.join(INPUT_DIR, 'Hello.smali')
            classes_dex = os.path.join(tmp_dir, 'classes.dex')
            self._assemble_smali(classes_dex, smali_file)

            smali_file = os.path.join(INPUT_DIR, 'Example.smali')
            classes2_dex = os.path.join(tmp_dir, 'classes2.dex')
            self._assemble_smali(classes2_dex, smali_file)

            zip_file = os.path.join(tmp_dir, 'example.apk')
            self._create_zip_file(zip_file, [classes_dex, classes2_dex])

            strs = set(DexFileReader.enumerate_dex_strings_apk(zip_file))

            self.assertIn('hello', strs)
            self.assertIn('world', strs)
            self.assertIn('foo', strs)
            self.assertIn('bar', strs)