[llvm] r238766 - lit: Allow configurations to restrict the set of tests to run
Arnold Schwaighofer
aschwaighofer at apple.com
Mon Jun 1 10:50:04 PDT 2015
Author: arnolds
Date: Mon Jun 1 12:50:03 2015
New Revision: 238766
URL: http://llvm.org/viewvc/llvm-project?rev=238766&view=rev
Log:
lit: Allow configurations to restrict the set of tests to run
By setting limit_to_features to a non empty list of features a configuration can
restrict the set of tests to run to only include tests that require a feature in
this list.
rdar://21082253
Modified:
llvm/trunk/utils/lit/lit/TestRunner.py
llvm/trunk/utils/lit/lit/TestingConfig.py
Modified: llvm/trunk/utils/lit/lit/TestRunner.py
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/lit/lit/TestRunner.py?rev=238766&r1=238765&r2=238766&view=diff
==============================================================================
--- llvm/trunk/utils/lit/lit/TestRunner.py (original)
+++ llvm/trunk/utils/lit/lit/TestRunner.py Mon Jun 1 12:50:03 2015
@@ -513,6 +513,15 @@ def parseIntegratedTestScript(test, norm
return lit.Test.Result(Test.UNSUPPORTED,
"Test is unsupported with the following features: %s" % msg)
+ if test.config.limit_to_features:
+ # Check that we have one of the limit_to_features features in requires.
+ limit_to_features_tests = [f for f in test.config.limit_to_features
+ if f in requires]
+ if not limit_to_features_tests:
+ msg = ', '.join(test.config.limit_to_features)
+ return lit.Test.Result(Test.UNSUPPORTED,
+ "Test requires one of the limit_to_features features %s" % msg)
+
return script,tmpBase,execdir
def _runShTest(test, litConfig, useExternalSh,
Modified: llvm/trunk/utils/lit/lit/TestingConfig.py
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/lit/lit/TestingConfig.py?rev=238766&r1=238765&r2=238766&view=diff
==============================================================================
--- llvm/trunk/utils/lit/lit/TestingConfig.py (original)
+++ llvm/trunk/utils/lit/lit/TestingConfig.py Mon Jun 1 12:50:03 2015
@@ -118,7 +118,7 @@ class TestingConfig:
def __init__(self, parent, name, suffixes, test_format,
environment, substitutions, unsupported,
test_exec_root, test_source_root, excludes,
- available_features, pipefail):
+ available_features, pipefail, limit_to_features = []):
self.parent = parent
self.name = str(name)
self.suffixes = set(suffixes)
@@ -131,6 +131,10 @@ class TestingConfig:
self.excludes = set(excludes)
self.available_features = set(available_features)
self.pipefail = pipefail
+ # This list is used by TestRunner.py to restrict running only tests that
+ # require one of the features in this list if this list is non-empty.
+ # Configurations can set this list to restrict the set of tests to run.
+ self.limit_to_features = set(limit_to_features)
def finish(self, litConfig):
"""finish() - Finish this config object, after loading is complete."""
More information about the llvm-commits
mailing list