Skip to content

Commit 2f50c85

Browse files
committed
[test] Add config.target_run_simple_swiftgyb_parameterized.
Support `%target-run-simple-swiftgyb(...)` taking compiler arguments. Copies existing support for `%target-run-simple-swift(...)`.
1 parent 3999b8b commit 2f50c85

File tree

2 files changed

+51
-8
lines changed

2 files changed

+51
-8
lines changed

docs/Testing.md

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -275,6 +275,34 @@ code for the target that is not the build machine:
275275

276276
Add ``REQUIRES: executable_test`` to the test.
277277

278+
* ``%target-run-simple-swift(`` *compiler arguments* ``)``: like
279+
``%target-run-simple-swift``, but enables specifying compiler arguments when
280+
compiling the Swift program.
281+
282+
Add ``REQUIRES: executable_test`` to the test.
283+
284+
* ``%target-run-simple-swiftgyb``: build a one-file Swift `.gyb` program and
285+
run it on the target machine.
286+
287+
Use this substitution for executable tests that don't require special
288+
compiler arguments.
289+
290+
Add ``REQUIRES: executable_test`` to the test.
291+
292+
* ``%target-run-simple-swiftgyb(`` *compiler arguments* ``)``: like
293+
``%target-run-simple-swiftgyb``, but enables specifying compiler arguments
294+
when compiling the Swift program.
295+
296+
Add ``REQUIRES: executable_test`` to the test.
297+
298+
* ``%target-run-simple-swift``: build a one-file Swift program and run it on
299+
the target machine.
300+
301+
Use this substitution for executable tests that don't require special
302+
compiler arguments.
303+
304+
Add ``REQUIRES: executable_test`` to the test.
305+
278306
* ``%target-run-stdlib-swift``: like ``%target-run-simple-swift`` with
279307
``-parse-stdlib -Xfrontend -disable-access-control``.
280308

test/lit.cfg

Lines changed: 23 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -785,6 +785,7 @@ def use_interpreter_for_simple_runs():
785785
config.target_run_stdlib_swift = make_simple_target_run(stdlib=True)
786786
config.target_run_simple_swift = make_simple_target_run()
787787
config.target_run_simple_swift_parameterized = make_simple_target_run(parameterized=True)
788+
config.target_run_simple_swiftgyb_parameterized = make_simple_target_run(gyb=True, parameterized=True)
788789
config.available_features.add('interpret')
789790

790791
target_specific_module_triple = config.variant_triple
@@ -1609,13 +1610,24 @@ if not kIsWindows:
16091610
.format(all_stdlib_path, libdispatch_path)) + config.target_run
16101611

16111612
if not getattr(config, 'target_run_simple_swift', None):
1612-
config.target_run_simple_swift_parameterized = \
1613-
(SubstituteCaptures('%%empty-directory(%%t) && '
1614-
'%s %s %%s \\1 -o %%t/a.out -module-name main && '
1615-
'%s %%t/a.out && '
1616-
'%s %%t/a.out' % (config.target_build_swift,
1617-
mcp_opt, config.target_codesign,
1618-
config.target_run)))
1613+
config.target_run_simple_swift_parameterized = SubstituteCaptures(
1614+
"%%empty-directory(%%t) && "
1615+
"%s %s %%s \\1 -o %%t/a.out -module-name main && "
1616+
"%s %%t/a.out && "
1617+
"%s %%t/a.out"
1618+
% (config.target_build_swift, mcp_opt, config.target_codesign, config.target_run)
1619+
)
1620+
config.target_run_simple_swiftgyb_parameterized = SubstituteCaptures(
1621+
"%%empty-directory(%%t) && "
1622+
"%%gyb %%s -o %%t/main.swift && "
1623+
"%%line-directive %%t/main.swift -- "
1624+
"%s %s %%t/main.swift \\1 -o %%t/a.out -module-name main && "
1625+
"%s %%t/a.out && "
1626+
"%%line-directive %%t/main.swift -- "
1627+
"%s %%t/a.out"
1628+
% (config.target_build_swift, mcp_opt, config.target_codesign, config.target_run)
1629+
)
1630+
16191631
config.target_run_simple_swift = (
16201632
'%%empty-directory(%%t) && '
16211633
'%s %s %%s -o %%t/a.out -module-name main && '
@@ -1688,8 +1700,11 @@ config.substitutions.append(('%target-swift-frontend\(mock-sdk:([^)]+)\)',
16881700
config.substitutions.append(('%target-swift-frontend', config.target_swift_frontend))
16891701

16901702

1703+
config.substitutions.append(('%target-run-simple-swiftgyb\(([^)]+)\)',
1704+
config.target_run_simple_swiftgyb_parameterized))
16911705
config.substitutions.append(('%target-run-simple-swiftgyb', config.target_run_simple_swiftgyb))
1692-
config.substitutions.append(('%target-run-simple-swift\(([^)]+)\)', config.target_run_simple_swift_parameterized))
1706+
config.substitutions.append(('%target-run-simple-swift\(([^)]+)\)',
1707+
config.target_run_simple_swift_parameterized))
16931708
config.substitutions.append(('%target-run-simple-swift', config.target_run_simple_swift))
16941709
config.substitutions.append(('%target-run-stdlib-swiftgyb', config.target_run_stdlib_swiftgyb))
16951710
config.substitutions.append(('%target-run-stdlib-swift', config.target_run_stdlib_swift))

0 commit comments

Comments
 (0)