Files
Dark Steveneq 646b892680
Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s
push sheeet
2025-10-09 14:15:47 +02:00

47 lines
818 B
Nix

/*
Run with:
cd nixpkgs
nix-build -A tests.trivial-builders.writeCBin
*/
{
lib,
writeCBin,
runCommand,
}:
let
output = "hello";
pkg = writeCBin "test-script" ''
#include <stdio.h>
int main () {
printf("hello\n");
return 0;
}
'';
in
assert pkg.meta.mainProgram == "test-script";
runCommand "test-writeCBin" { } ''
echo Testing with getExe...
target=${lib.getExe pkg}
expected=${lib.escapeShellArg output}
got=$("$target")
if [[ "$got" != "$expected" ]]; then
echo "wrong output: expected $expected, got $got"
exit 1
fi
echo Testing with makeBinPath...
PATH="${lib.makeBinPath [ pkg ]}:$PATH"
got=$(test-script)
if [[ "$got" != "$expected" ]]; then
echo "wrong output: expected $expected, got $got"
exit 1
fi
touch $out
''