From 98a550e352346012ac75555369dc66a3c962cba8 Mon Sep 17 00:00:00 2001 From: Dave Halter Date: Tue, 6 Aug 2019 00:36:50 +0200 Subject: [PATCH] Python 2 compatibility --- jedi/evaluate/context/module.py | 5 ++++- test/test_api/test_completion.py | 6 +++--- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/jedi/evaluate/context/module.py b/jedi/evaluate/context/module.py index 248cf322..f12964e5 100644 --- a/jedi/evaluate/context/module.py +++ b/jedi/evaluate/context/module.py @@ -26,8 +26,11 @@ class _ModuleAttributeName(AbstractNameDefinition): def infer(self): if self._string_value is not None: + s = self._string_value + if self.parent_context.evaluator.environment.version_info.major == 2: + s = bytes(s) return ContextSet([ - create_simple_object(self.parent_context.evaluator, self._string_value) + create_simple_object(self.parent_context.evaluator, s) ]) return compiled.get_string_context_set(self.parent_context.evaluator) diff --git a/test/test_api/test_completion.py b/test/test_api/test_completion.py index 286e969e..33917aec 100644 --- a/test/test_api/test_completion.py +++ b/test/test_api/test_completion.py @@ -166,8 +166,8 @@ def test_keyword_completion(Script, code, has_keywords): (None, '"test', None, [s]), (None, '"test', 4, ['t' + s]), ('example.py', '"test%scomp' % s, None, ['letion' + s]), - ('example.py', 'r"comp"', None, ...), - ('example.py', 'r"tes"', None, ...), + ('example.py', 'r"comp"', None, "A LOT"), + ('example.py', 'r"tes"', None, "A LOT"), ('example.py', 'r"tes"', 5, ['t' + s]), ('example.py', 'r" tes"', 6, []), ('test%sexample.py' % s, 'r"tes"', 5, ['t' + s]), @@ -203,7 +203,7 @@ def test_file_path_completions(Script, file, code, column, expected): if isinstance(column, tuple): line, column = column comps = Script(code, path=file, line=line, column=column).completions() - if expected == ...: + if expected == "A LOT": assert len(comps) > 100 # This is basically global completions. else: assert [c.complete for c in comps] == expected