1
0
Fork 0
mirror of https://github.com/NixOS/nix synced 2025-07-07 14:21:48 +02:00

tests: Test #4197 nix-build output order regression

This commit is contained in:
Robert Hensing 2020-11-13 17:49:55 +01:00
parent ac5081d280
commit d264da8d96
2 changed files with 48 additions and 0 deletions

View file

@ -26,3 +26,18 @@ outPath2=$(nix-build $(nix-instantiate dependencies.nix)!out --no-out-link)
outPath2=$(nix-store -r $(nix-instantiate --add-root $TEST_ROOT/indirect dependencies.nix)!out)
[[ $outPath = $outPath2 ]]
# The order of the paths on stdout must correspond to the -A options
# https://github.com/NixOS/nix/issues/4197
input0="$(nix-build nix-build-examples.nix -A input0 --no-out-link)"
input1="$(nix-build nix-build-examples.nix -A input1 --no-out-link)"
input2="$(nix-build nix-build-examples.nix -A input2 --no-out-link)"
body="$(nix-build nix-build-examples.nix -A body --no-out-link)"
outPathsA="$(echo $(nix-build nix-build-examples.nix -A input0 -A input1 -A input2 -A body --no-out-link))"
[[ "$outPathsA" = "$input0 $input1 $input2 $body" ]]
# test a different ordering to make sure it fails, not just in 23 out of 24 permutations
outPathsB="$(echo $(nix-build nix-build-examples.nix -A body -A input1 -A input2 -A input0 --no-out-link))"
[[ "$outPathsB" = "$body $input1 $input2 $input0" ]]