mirror of
https://github.com/ditkrg/todo-to-issue-action.git
synced 2026-01-22 22:06:43 +00:00
extend to support a comma-delimited list of patterns
This commit is contained in:
parent
2bc73c5967
commit
bec4b579f8
@ -52,5 +52,5 @@ inputs:
|
||||
description: "Default organisation projects"
|
||||
required: false
|
||||
IGNORE:
|
||||
description: "A regular expression that matches files that should be ignored when searching for TODOs"
|
||||
description: "A collection of comma-delimited regular expression that matches files that should be ignored when searching for TODOs"
|
||||
required: false
|
||||
|
||||
9
main.py
9
main.py
@ -607,10 +607,11 @@ class TodoParser(object):
|
||||
return projects
|
||||
|
||||
def _should_ignore(self, file):
|
||||
ignore_pattern = os.getenv('INPUT_IGNORE', None)
|
||||
if ignore_pattern:
|
||||
if re.match(ignore_pattern, file):
|
||||
return True
|
||||
ignore_patterns = os.getenv('INPUT_IGNORE', None)
|
||||
if ignore_patterns:
|
||||
for pattern in filter(None, [pattern.strip() for pattern in ignore_patterns.split(',')]):
|
||||
if re.match(pattern, file):
|
||||
return True
|
||||
return False
|
||||
|
||||
|
||||
|
||||
@ -66,3 +66,14 @@ class IgnorePatternTests(unittest.TestCase):
|
||||
self.assertEqual(count_issues_for_file_type(self.raw_issues, 'java'), 0)
|
||||
self.assertEqual(count_issues_for_file_type(self.raw_issues, 'ruby'), 3)
|
||||
os.environ['INPUT_IGNORE'] = ''
|
||||
|
||||
def test_multiple_ignores(self):
|
||||
os.environ['INPUT_IGNORE'] = '.*\.java, tests/example-file\.php'
|
||||
diff_file = open('tests/test_new.diff', 'r')
|
||||
self.raw_issues = TodoParser().parse(diff_file)
|
||||
self.assertEqual(count_issues_for_file_type(self.raw_issues, 'python'), 2)
|
||||
self.assertEqual(count_issues_for_file_type(self.raw_issues, 'yaml'), 2)
|
||||
self.assertEqual(count_issues_for_file_type(self.raw_issues, 'php'), 0)
|
||||
self.assertEqual(count_issues_for_file_type(self.raw_issues, 'java'), 0)
|
||||
self.assertEqual(count_issues_for_file_type(self.raw_issues, 'ruby'), 3)
|
||||
os.environ['INPUT_IGNORE'] = ''
|
||||
|
||||
Loading…
Reference in New Issue
Block a user