mirror of
https://github.com/RPCS3/llvm.git
synced 2024-11-26 13:10:42 +00:00
[lit] Add a --filter option which is useful when dealing with virtual test
paths. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148362 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
0271dadee4
commit
7434c9a053
@ -429,6 +429,10 @@ def main(builtinParameters = {}): # Bump the GIL check interval, its more imp
|
||||
group.add_option("", "--shuffle", dest="shuffle",
|
||||
help="Run tests in random order",
|
||||
action="store_true", default=False)
|
||||
group.add_option("", "--filter", dest="filter", metavar="EXPRESSION",
|
||||
help=("Only run tests with paths matching the given "
|
||||
"regular expression"),
|
||||
action="store", default=None)
|
||||
parser.add_option_group(group)
|
||||
|
||||
group = OptionGroup(parser, "Debug and Experimental Options")
|
||||
@ -540,10 +544,24 @@ def main(builtinParameters = {}): # Bump the GIL check interval, its more imp
|
||||
|
||||
# Select and order the tests.
|
||||
numTotalTests = len(tests)
|
||||
|
||||
# First, select based on the filter expression if given.
|
||||
if opts.filter:
|
||||
try:
|
||||
rex = re.compile(opts.filter)
|
||||
except:
|
||||
parser.error("invalid regular expression for --filter: %r" % (
|
||||
opts.filter))
|
||||
tests = [t for t in tests
|
||||
if rex.search(t.getFullName())]
|
||||
|
||||
# Then select the order.
|
||||
if opts.shuffle:
|
||||
random.shuffle(tests)
|
||||
else:
|
||||
tests.sort(key = lambda t: t.getFullName())
|
||||
|
||||
# Finally limit the number of tests, if desired.
|
||||
if opts.maxTests is not None:
|
||||
tests = tests[:opts.maxTests]
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user