From 1631ab8ac719d1c2ab39df1bc8c41028683ef23e Mon Sep 17 00:00:00 2001 From: Ian Cordasco Date: Sat, 27 Aug 2016 19:44:24 -0500 Subject: [PATCH] Add failing test for NoneType in handle_error There are rare cases when StyleGuide#handle_error might receive None as the column_number. This adds the failing test to ensure we don't regress the correct behaviour. Related-to #214 --- tests/unit/test_style_guide.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/tests/unit/test_style_guide.py b/tests/unit/test_style_guide.py index 64a7fcd..8e714b7 100644 --- a/tests/unit/test_style_guide.py +++ b/tests/unit/test_style_guide.py @@ -185,6 +185,19 @@ def test_handle_error_notifies_listeners(select_list, ignore_list, error_code): formatter.handle.assert_called_once_with(error) +def test_handle_error_does_not_raise_type_errors(): + """Verify that we handle our inputs better.""" + listener_trie = mock.create_autospec(notifier.Notifier, instance=True) + formatter = mock.create_autospec(base.BaseFormatter, instance=True) + guide = style_guide.StyleGuide(create_options(select=['T111'], ignore=[]), + listener_trie=listener_trie, + formatter=formatter) + + assert 1 == guide.handle_error( + 'T111', 'file.py', 1, None, 'error found', 'a = 1' + ) + + @pytest.mark.parametrize('select_list,ignore_list,error_code', [ (['E111', 'E121'], [], 'E122'), (['E11', 'E12'], [], 'E132'),