Files
android_development/vndk/tools/definition-tool/tests/test_module_info.py
Logan Chien 68121b4f37 vndk-def: check-dep: Print symbols and module_path
This commit add the functionality to print depended symbols from
ineligible libs and violating module source path to check-dep
subcommand.

Test: ./tests/run.py

Test: Run `vndk_definition_tool.py deps --symbols` on various tree and
the output should remain identical.

Test: Run `vndk_definition_tool.py check-dep --module-info ...`

Bug: 32811412

Change-Id: Ie9fa31da4ac18425604e27e0377c7da2b88bd4eb
2017-04-17 15:03:32 +08:00

40 lines
1.2 KiB
Python
Executable File

#!/usr/bin/env python3
from __future__ import print_function
import os
import sys
sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
import unittest
from vndk_definition_tool import ModuleInfo
SCRIPT_DIR = os.path.dirname(os.path.abspath(__file__))
class ModuleInfoTest(unittest.TestCase):
def test_default(self):
m = ModuleInfo()
self.assertEqual([], m.get_module_path('/system/lib64/libA.so'))
def test_get_module_path(self):
m = ModuleInfo(os.path.join(SCRIPT_DIR, 'testdata', 'test_module_info',
'module-info.json'))
self.assertEqual(['system/core/libA'],
m.get_module_path('/system/lib64/libA.so'))
self.assertEqual(['frameworks/base/libB'],
m.get_module_path('/system/lib64/libB.so'))
self.assertEqual(['frameworks/base/libC'],
m.get_module_path('/system/lib64/libC.so'))
self.assertEqual(['frameworks/base/libC'],
m.get_module_path('/system/lib64/hw/libC.so'))
self.assertEqual(
[], m.get_module_path('/system/lib64/libdoes_not_exist.so'))
if __name__ == '__main__':
unittest.main()