All checks were successful
CI / build-test-release (pull_request) Successful in 9m56s
With test.toml + ForTarget covering the cross-arch + Windows-on-Linux
cases, the env-var-driven transport runners are dead weight. This commit
removes them and the retired tests that exercised the env-var plumbing:
- TestRunner::Ssh / SshWin / Wsl factories and their copy/exec/cleanup
template machinery.
- TestRunner::Shell enum (Host/Sh/Cmd) and the ShellQuoteSh helper —
only Host shell quoting is needed once the remote shells are gone.
- TestRunner::copy / cleanup / remoteDir / argsShell fields.
- WindowsPathToWsl and the {remote_bundle}/{bin_win}/{bundle_wsl}
placeholder substitution in RunSingleTest's transport branch.
- ParseRunnerSpec narrowed from {local, cmd, ssh, sshwin, wsl} to
{local, cmd} — the override hatch is preserved, just simpler.
- tests/SshRunner, tests/WindowsViaSsh, tests/QemuUser: these tested
the CRAFTER_BUILD_RUNNER_<target> → runner plumbing that has been
replaced by ForTarget. The runner derivation is exercised every
time CrossArchAarch64 / Wasi / WindowsViaWine runs.
- tests/UnitLib: ssh/sshwin spec assertions become "throws on bogus
spec" assertions.
Refs issue #8.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
27 lines
893 B
C++
27 lines
893 B
C++
import std;
|
|
import Crafter.Build;
|
|
using namespace Crafter;
|
|
|
|
int main() {
|
|
// Local() is the no-op runner — empty exec template, name "local".
|
|
if (TestRunner::Local().name != "local") return 1;
|
|
|
|
// FromSpec parses each known kind and labels it consistently.
|
|
auto cmd = TestRunner::FromSpec("cmd:wine");
|
|
if (!cmd || cmd->name != "cmd:wine") return 1;
|
|
|
|
auto local = TestRunner::FromSpec("local");
|
|
if (!local || local->name != "local") return 1;
|
|
|
|
// Empty input returns nullopt; anything else unrecognized throws.
|
|
// ssh/sshwin/wsl used to be valid specs; they're now bogus (issue #8).
|
|
if (TestRunner::FromSpec("")) return 1;
|
|
for (auto bogus : { "nonsense:thing", "ssh:somehost", "sshwin:winhost", "wsl" }) {
|
|
try {
|
|
TestRunner::FromSpec(bogus);
|
|
return 1;
|
|
} catch (const std::exception&) {}
|
|
}
|
|
|
|
return 0;
|
|
}
|