def test_windows_code_without_issues(self): self.reporter.call_count = 0 checker = PythonChecker( 'bogus', good_python_on_windows, self.reporter) checker.check_flakes() self.assertEqual([], self.reporter.messages) self.assertEqual(0, self.reporter.call_count)
def test_code_with_very_bad_SyntaxError(self): checker = PythonChecker( 'bogus', bad_syntax2_python, self.reporter) checker.check_flakes() expected = [( 2, 'Could not compile; invalid syntax: def __init__(self, val):')] self.assertEqual(expected, self.reporter.messages)
def test_code_with_IndentationError(self): checker = PythonChecker( 'bogus', bad_indentation_python, self.reporter) checker.check_flakes() expected = [ (4, 'Could not compile; unindent does not match any ' 'outer indentation level: b = 1')] self.assertEqual(expected, self.reporter.messages)
def test_code_with_warnings(self): self.reporter.call_count = 0 checker = PythonChecker('bogus', ugly_python, self.reporter) checker.check_flakes() self.assertEqual( [(3, "undefined name 'b'"), (3, "local variable 'a' is assigned to but never used")], self.reporter.messages) self.assertEqual(2, self.reporter.call_count)
def test_pyflakes_ignore(self): pyflakes_ignore = ( 'def something():\n' ' unused_variable = 1 # pyflakes:ignore\n' ) self.reporter.call_count = 0 checker = PythonChecker('bogus', pyflakes_ignore, self.reporter) checker.check_flakes() self.assertEqual([], self.reporter.messages) self.assertEqual(0, self.reporter.call_count)
def test_code_with_SyntaxError(self): self.reporter.call_count = 0 checker = PythonChecker( 'bogus', bad_syntax_python, self.reporter) checker.check_flakes() expected = [( 2, 'Could not compile; non-default argument follows ' 'default argument: ')] self.assertEqual(expected, self.reporter.messages) self.assertEqual(1, self.reporter.call_count)