summaryrefslogtreecommitdiff
path: root/pylint/test/unittest_checker_python3.py
diff options
context:
space:
mode:
Diffstat (limited to 'pylint/test/unittest_checker_python3.py')
-rw-r--r--pylint/test/unittest_checker_python3.py32
1 files changed, 17 insertions, 15 deletions
diff --git a/pylint/test/unittest_checker_python3.py b/pylint/test/unittest_checker_python3.py
index 10ea7c1dc..6d2a2debc 100644
--- a/pylint/test/unittest_checker_python3.py
+++ b/pylint/test/unittest_checker_python3.py
@@ -33,6 +33,7 @@ python2_only = pytest.mark.skipif(sys.version_info[0] > 2, reason='Python 2 only
# TODO(cpopa): Port these to the functional test framework instead.
class TestPython3Checker(testutils.CheckerTestCase):
+
CHECKER_CLASS = checker.Python3Checker
def check_bad_builtin(self, builtin_name):
@@ -714,21 +715,22 @@ class TestPython3Checker(testutils.CheckerTestCase):
self.checker.visit_attribute(node)
def test_comprehension_escape(self):
- list_comp, set_comp, dict_comp = astroid.extract_node('''
- [i for i in range(10)]
+ assign, escaped_node = astroid.extract_node('''
+ a = [i for i in range(10)] #@
i #@
- {c for c in range(10)}
- c #@
- {j:j for j in range(10)}
- j #@
''')
- message = testutils.Message('comprehension-escape', node=list_comp)
+ good_module = astroid.parse('''
+ {c for c in range(10)} #@
+ {j:j for j in range(10)} #@
+ [image_child] = [x for x in range(10)]
+ thumbnail = func(__(image_child))
+ ''')
+ message = testutils.Message('comprehension-escape', node=escaped_node)
with self.assertAddsMessages(message):
- self.checker.visit_name(list_comp)
+ self.checker.visit_listcomp(assign.value)
- for node in (set_comp, dict_comp):
- with self.assertNoMessages():
- self.checker.visit_name(node)
+ with self.assertNoMessages():
+ self.walk(good_module)
def test_comprehension_escape_newly_introduced(self):
node = astroid.extract_node('''
@@ -740,7 +742,7 @@ class TestPython3Checker(testutils.CheckerTestCase):
self.walk(node)
def test_exception_escape(self):
- bad, good = astroid.extract_node('''
+ module = astroid.parse('''
try: 1/0
except ValueError as exc:
pass
@@ -751,11 +753,11 @@ class TestPython3Checker(testutils.CheckerTestCase):
exc = 2
exc #@
''')
- message = testutils.Message('exception-escape', node=bad)
+ message = testutils.Message('exception-escape', node=module.body[1].value)
with self.assertAddsMessages(message):
- self.checker.visit_name(bad)
+ self.checker.visit_excepthandler(module.body[0].handlers[0])
with self.assertNoMessages():
- self.checker.visit_name(good)
+ self.checker.visit_excepthandler(module.body[2].handlers[0])
def test_bad_sys_attribute(self):
node = astroid.extract_node('''