| OLD | NEW |
| 1 # Copyright (C) 2009 Google Inc. All rights reserved. | 1 # Copyright (C) 2009 Google Inc. All rights reserved. |
| 2 # | 2 # |
| 3 # Redistribution and use in source and binary forms, with or without | 3 # Redistribution and use in source and binary forms, with or without |
| 4 # modification, are permitted provided that the following conditions are | 4 # modification, are permitted provided that the following conditions are |
| 5 # met: | 5 # met: |
| 6 # | 6 # |
| 7 # * Redistributions of source code must retain the above copyright | 7 # * Redistributions of source code must retain the above copyright |
| 8 # notice, this list of conditions and the following disclaimer. | 8 # notice, this list of conditions and the following disclaimer. |
| 9 # * Redistributions in binary form must reproduce the above | 9 # * Redistributions in binary form must reproduce the above |
| 10 # copyright notice, this list of conditions and the following disclaimer | 10 # copyright notice, this list of conditions and the following disclaimer |
| (...skipping 15 matching lines...) Expand all Loading... |
| 26 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | 26 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
| 27 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 27 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| 28 | 28 |
| 29 """Unit test for text_style.py.""" | 29 """Unit test for text_style.py.""" |
| 30 | 30 |
| 31 import unittest | 31 import unittest |
| 32 | 32 |
| 33 import text as text_style | 33 import text as text_style |
| 34 from text import TextChecker | 34 from text import TextChecker |
| 35 | 35 |
| 36 |
| 36 class TextStyleTestCase(unittest.TestCase): | 37 class TextStyleTestCase(unittest.TestCase): |
| 37 """TestCase for text_style.py""" | 38 """TestCase for text_style.py""" |
| 38 | 39 |
| 39 def assertNoError(self, lines): | 40 def assertNoError(self, lines): |
| 40 """Asserts that the specified lines has no errors.""" | 41 """Asserts that the specified lines has no errors.""" |
| 41 self.had_error = False | 42 self.had_error = False |
| 42 | 43 |
| 43 def error_for_test(line_number, category, confidence, message): | 44 def error_for_test(line_number, category, confidence, message): |
| 44 """Records if an error occurs.""" | 45 """Records if an error occurs.""" |
| 45 self.had_error = True | 46 self.had_error = True |
| 46 | 47 |
| 47 text_style.process_file_data('', lines, error_for_test) | 48 text_style.process_file_data('', lines, error_for_test) |
| 48 self.assertFalse(self.had_error, '%s should not have any errors.' % line
s) | 49 self.assertFalse(self.had_error, '%s should not have any errors.' % line
s) |
| 49 | 50 |
| 50 def assertError(self, lines, expected_line_number): | 51 def assertError(self, lines, expected_line_number): |
| 51 """Asserts that the specified lines has an error.""" | 52 """Asserts that the specified lines has an error.""" |
| 52 self.had_error = False | 53 self.had_error = False |
| 53 | 54 |
| 54 def error_for_test(line_number, category, confidence, message): | 55 def error_for_test(line_number, category, confidence, message): |
| 55 """Checks if the expected error occurs.""" | 56 """Checks if the expected error occurs.""" |
| 56 self.assertEqual(expected_line_number, line_number) | 57 self.assertEqual(expected_line_number, line_number) |
| 57 self.assertEqual('whitespace/tab', category) | 58 self.assertEqual('whitespace/tab', category) |
| 58 self.had_error = True | 59 self.had_error = True |
| 59 | 60 |
| 60 text_style.process_file_data('', lines, error_for_test) | 61 text_style.process_file_data('', lines, error_for_test) |
| 61 self.assertTrue(self.had_error, '%s should have an error [whitespace/tab
].' % lines) | 62 self.assertTrue(self.had_error, '%s should have an error [whitespace/tab
].' % lines) |
| 62 | 63 |
| 63 | |
| 64 def test_no_error(self): | 64 def test_no_error(self): |
| 65 """Tests for no error cases.""" | 65 """Tests for no error cases.""" |
| 66 self.assertNoError(['']) | 66 self.assertNoError(['']) |
| 67 self.assertNoError(['abc def', 'ggg']) | 67 self.assertNoError(['abc def', 'ggg']) |
| 68 | 68 |
| 69 | |
| 70 def test_error(self): | 69 def test_error(self): |
| 71 """Tests for error cases.""" | 70 """Tests for error cases.""" |
| 72 self.assertError(['2009-12-16\tKent Tamura\t<tkent@chromium.org>'], 1) | 71 self.assertError(['2009-12-16\tKent Tamura\t<tkent@chromium.org>'], 1) |
| 73 self.assertError(['2009-12-16 Kent Tamura <tkent@chromium.org>', | 72 self.assertError(['2009-12-16 Kent Tamura <tkent@chromium.org>', |
| 74 '', | 73 '', |
| 75 '\tReviewed by NOBODY.'], 3) | 74 '\tReviewed by NOBODY.'], 3) |
| 76 | 75 |
| 77 | 76 |
| 78 class TextCheckerTest(unittest.TestCase): | 77 class TextCheckerTest(unittest.TestCase): |
| 79 | 78 |
| 80 """Tests TextChecker class.""" | 79 """Tests TextChecker class.""" |
| 81 | 80 |
| 82 def mock_handle_style_error(self): | 81 def mock_handle_style_error(self): |
| 83 pass | 82 pass |
| 84 | 83 |
| 85 def test_init(self): | 84 def test_init(self): |
| 86 """Test __init__ constructor.""" | 85 """Test __init__ constructor.""" |
| 87 checker = TextChecker("foo.txt", self.mock_handle_style_error) | 86 checker = TextChecker("foo.txt", self.mock_handle_style_error) |
| 88 self.assertEqual(checker.file_path, "foo.txt") | 87 self.assertEqual(checker.file_path, "foo.txt") |
| 89 self.assertEqual(checker.handle_style_error, self.mock_handle_style_erro
r) | 88 self.assertEqual(checker.handle_style_error, self.mock_handle_style_erro
r) |
| OLD | NEW |