import ast import os from .base_test_case import BaseTestCase from pyt.base_cfg import get_call_names_as_string from pyt.project_handler import get_directory_modules, get_python_modules class ImportTest(BaseTestCase): def test_import(self): path = os.path.normpath('example/import_test_project/main.py') project_modules = get_python_modules(os.path.dirname(path)) local_modules = get_directory_modules(os.path.dirname(path)) self.cfg_create_from_file(path, project_modules, local_modules) cfg_list = [self.cfg] #adaptor_type = FlaskAdaptor(cfg_list) def test_get_call_names_single(self): m = ast.parse('hi(a)') call = m.body[0].value result = get_call_names_as_string(call.func) self.assertEqual(result, 'hi') def test_get_call_names_uselesscase(self): m = ast.parse('defg.hi(a)') call = m.body[0].value result = get_call_names_as_string(call.func) self.assertEqual(result, 'defg.hi') def test_get_call_names_multi(self): m = ast.parse('abc.defg.hi(a)') call = m.body[0].value result = get_call_names_as_string(call.func) self.assertEqual(result, 'abc.defg.hi')