diff options
Diffstat (limited to 'tests/build.sh')
-rw-r--r-- | tests/build.sh | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/tests/build.sh b/tests/build.sh index dd264253a..5757ca73f 100644 --- a/tests/build.sh +++ b/tests/build.sh @@ -1,16 +1,29 @@ source common.sh -expectedJSONRegex='\[\{"drvPath":".*multiple-outputs-a.drv","outputs":\{"first":".*multiple-outputs-a-first","second":".*multiple-outputs-a-second"}},\{"drvPath":".*multiple-outputs-b.drv","outputs":\{"out":".*multiple-outputs-b"}}]' +clearStore + +# Make sure that 'nix build' only returns the outputs we asked for. +nix build -f multiple-outputs.nix --json a --no-link | jq --exit-status ' + (.[0] | + (.drvPath | match(".*multiple-outputs-a.drv")) and + (.outputs | keys | length == 1) and + (.outputs.first | match(".*multiple-outputs-a-first"))) +' + nix build -f multiple-outputs.nix --json a.all b.all --no-link | jq --exit-status ' (.[0] | (.drvPath | match(".*multiple-outputs-a.drv")) and (.outputs | + (keys | length == 2) and (.first | match(".*multiple-outputs-a-first")) and (.second | match(".*multiple-outputs-a-second")))) and (.[1] | (.drvPath | match(".*multiple-outputs-b.drv")) and - (.outputs.out | match(".*multiple-outputs-b"))) + (.outputs | + (keys | length == 1) and + (.out | match(".*multiple-outputs-b")))) ' + testNormalization () { clearStore outPath=$(nix-build ./simple.nix --no-out-link) |