OLD | NEW |
(Empty) | |
| 1 import unittest |
| 2 |
| 3 from rope.contrib import finderrors |
| 4 from ropetest import testutils |
| 5 |
| 6 |
| 7 class FindErrorsTest(unittest.TestCase): |
| 8 |
| 9 def setUp(self): |
| 10 super(FindErrorsTest, self).setUp() |
| 11 self.project = testutils.sample_project() |
| 12 self.mod = self.project.root.create_file('mod.py') |
| 13 |
| 14 def tearDown(self): |
| 15 testutils.remove_project(self.project) |
| 16 super(FindErrorsTest, self).tearDown() |
| 17 |
| 18 def test_unresolved_variables(self): |
| 19 self.mod.write('print(var)\n') |
| 20 result = finderrors.find_errors(self.project, self.mod) |
| 21 self.assertEquals(1, len(result)) |
| 22 self.assertEquals(1, result[0].lineno) |
| 23 |
| 24 def test_defined_later(self): |
| 25 self.mod.write('print(var)\nvar = 1\n') |
| 26 result = finderrors.find_errors(self.project, self.mod) |
| 27 self.assertEquals(1, len(result)) |
| 28 self.assertEquals(1, result[0].lineno) |
| 29 |
| 30 def test_ignoring_builtins(self): |
| 31 self.mod.write('range(2)\n') |
| 32 result = finderrors.find_errors(self.project, self.mod) |
| 33 self.assertEquals(0, len(result)) |
| 34 |
| 35 def test_ignoring_none(self): |
| 36 self.mod.write('var = None\n') |
| 37 result = finderrors.find_errors(self.project, self.mod) |
| 38 self.assertEquals(0, len(result)) |
| 39 |
| 40 def test_bad_attributes(self): |
| 41 code = 'class C(object):\n' \ |
| 42 ' pass\n' \ |
| 43 'c = C()\n' \ |
| 44 'print(c.var)\n' |
| 45 self.mod.write(code) |
| 46 result = finderrors.find_errors(self.project, self.mod) |
| 47 self.assertEquals(1, len(result)) |
| 48 self.assertEquals(4, result[0].lineno) |
| 49 |
| 50 |
| 51 if __name__ == '__main__': |
| 52 unittest.main() |
OLD | NEW |