Commit 505150f7 authored by Stefan Behnel's avatar Stefan Behnel

Minor code simplification in test runner.

parent f4febd05
...@@ -1647,21 +1647,20 @@ class TagsSelector(object): ...@@ -1647,21 +1647,20 @@ class TagsSelector(object):
class RegExSelector(object): class RegExSelector(object):
def __init__(self, pattern_string): def __init__(self, pattern_string):
try: try:
self.pattern = re.compile(pattern_string, re.I|re.U) self.regex_matches = re.compile(pattern_string, re.I|re.U).search
except re.error: except re.error:
print('Invalid pattern: %r' % pattern_string) print('Invalid pattern: %r' % pattern_string)
raise raise
def __call__(self, testname, tags=None): def __call__(self, testname, tags=None):
return self.pattern.search(testname) return self.regex_matches(testname)
def string_selector(s): def string_selector(s):
ix = s.find(':') if ':' in s:
if ix == -1: return TagsSelector(*s.split(':', 1))
return RegExSelector(s)
else: else:
return TagsSelector(s[:ix], s[ix+1:]) return RegExSelector(s)
class ShardExcludeSelector(object): class ShardExcludeSelector(object):
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment