diff --git a/jedi/evaluate_representation.py b/jedi/evaluate_representation.py index 1bb2c65e..e5766d21 100644 --- a/jedi/evaluate_representation.py +++ b/jedi/evaluate_representation.py @@ -408,7 +408,7 @@ class Execution(Executable): return [] for obj in objects: - if not isinstance(obj, (Instance, Class)): + if not isinstance(obj, (Instance, Class, pr.Module)): debug.warning('getattr called without instance') continue diff --git a/test/test_regression.py b/test/test_regression.py index 2b1116bb..2484f48f 100755 --- a/test/test_regression.py +++ b/test/test_regression.py @@ -238,6 +238,11 @@ class TestRegression(TestBase): # jedi-vim #70 s = """def foo(""" assert self.function_definition(s) is None + jedi.set_debug_function(jedi.debug.print_to_stdout) + # jedi-vim #116 + s = """import functools; test = getattr(functools, 'partial'); test(""" + check(self.function_definition(s), 'partial', 0) + jedi.set_debug_function(None) @unittest.skip("function_definition at ``f( |)`` does not work") def test_function_definition_empty_paren_pre_space(self):