mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-14 00:32:55 +00:00
lit/lit.TestRunner: Add an extra_substitutions argument for executeShTest --
useful for test suites which want to piggyback onto the "shtest" format style. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147684 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
3326ec1842
commit
2d4a5bf817
@ -425,7 +425,8 @@ def isExpectedFail(xfails, xtargets, target_triple):
|
||||
|
||||
return True
|
||||
|
||||
def parseIntegratedTestScript(test, normalize_slashes=False):
|
||||
def parseIntegratedTestScript(test, normalize_slashes=False,
|
||||
extra_substitutions=[]):
|
||||
"""parseIntegratedTestScript - Scan an LLVM/Clang style integrated test
|
||||
script and extract the lines to 'RUN' as well as 'XFAIL' and 'XTARGET'
|
||||
information. The RUN lines also will have variable substitution performed.
|
||||
@ -452,7 +453,8 @@ def parseIntegratedTestScript(test, normalize_slashes=False):
|
||||
tmpBase = tmpBase.replace('\\', '/')
|
||||
|
||||
# We use #_MARKER_# to hide %% while we do the other substitutions.
|
||||
substitutions = [('%%', '#_MARKER_#')]
|
||||
substitutions = list(extra_substitutions)
|
||||
substitutions.extend([('%%', '#_MARKER_#')])
|
||||
substitutions.extend(test.config.substitutions)
|
||||
substitutions.extend([('%s', sourcepath),
|
||||
('%S', sourcedir),
|
||||
@ -599,11 +601,12 @@ def executeTclTest(test, litConfig):
|
||||
|
||||
return formatTestOutput(status, out, err, exitCode, failDueToStderr, script)
|
||||
|
||||
def executeShTest(test, litConfig, useExternalSh):
|
||||
def executeShTest(test, litConfig, useExternalSh,
|
||||
extra_substitutions=[]):
|
||||
if test.config.unsupported:
|
||||
return (Test.UNSUPPORTED, 'Test is unsupported')
|
||||
|
||||
res = parseIntegratedTestScript(test, useExternalSh)
|
||||
res = parseIntegratedTestScript(test, useExternalSh, extra_substitutions)
|
||||
if len(res) == 2:
|
||||
return res
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user