#!/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.load_from_path_or_default(None) self.assertEqual([], m.get_module_path('/system/lib64/libA.so')) def test_get_module_path(self): json_path = os.path.join(SCRIPT_DIR, 'testdata', 'test_module_info', 'module-info.json') m = ModuleInfo.load_from_path_or_default(json_path) 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()