From bfc1f55c3a4c7aa9f03a3ad257583c1309bde76f Mon Sep 17 00:00:00 2001 From: AbdealiJK Date: Thu, 1 Sep 2016 01:56:26 +0530 Subject: [PATCH] RadonBear: Handle col_offset==0 correctly Radon uses visitor.col_offset as 0 for results where column is not given. As we use None, we simply map it appropriately. (As suggested by blueyed) Fixes https://github.com/coala-analyzer/coala-bears/issues/609 --- bears/python/RadonBear.py | 3 ++- tests/python/RadonBearTest.py | 9 ++++++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/bears/python/RadonBear.py b/bears/python/RadonBear.py index eb9f3f73b8..86b74ba90d 100644 --- a/bears/python/RadonBear.py +++ b/bears/python/RadonBear.py @@ -45,8 +45,9 @@ def run(self, filename, file, if severity is None: continue + col = visitor.col_offset if visitor.col_offset else None visitor_range = SourceRange.from_values( - filename, visitor.lineno, visitor.col_offset, visitor.endline) + filename, visitor.lineno, col, visitor.endline) message = "{} has a cyclomatic complexity of {}".format( visitor.name, rank) diff --git a/tests/python/RadonBearTest.py b/tests/python/RadonBearTest.py index 501520f19d..0fcf919761 100644 --- a/tests/python/RadonBearTest.py +++ b/tests/python/RadonBearTest.py @@ -12,9 +12,16 @@ class class1(): pass """ +test_file3 = "def f():\n" + (" assert True\n" * 50) -RadonBearNoReportsTest = verify_local_bear(RadonBear, + +RadonBearDefaultsTest = verify_local_bear(RadonBear, valid_files=(test_file1, test_file2), + invalid_files=(test_file3,)) + + +RadonBearNoReportsTest = verify_local_bear(RadonBear, + valid_files=(test_file1, test_file2, test_file3), invalid_files=(), settings={"radon_ranks_info": "", "radon_ranks_normal": "",