From 46e42c92c1444e1dd3aec871b3750bcd7391f60e Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 20 Dec 2011 17:01:02 +0000 Subject: * Refactor a bit so that more tests can be added. --- tests/Makefile.am | 1 - tests/multiple-outputs.a.builder.sh | 6 ------ tests/multiple-outputs.b.builder.sh | 7 ------- tests/multiple-outputs.nix | 36 ++++++++++++++++++++++++------------ tests/multiple-outputs.sh | 12 ++---------- 5 files changed, 26 insertions(+), 36 deletions(-) delete mode 100644 tests/multiple-outputs.a.builder.sh delete mode 100644 tests/multiple-outputs.b.builder.sh diff --git a/tests/Makefile.am b/tests/Makefile.am index 8b5aa4bd99d0..70352dbb5ddb 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -36,7 +36,6 @@ EXTRA_DIST = $(TESTS) \ timeout.nix timeout.builder.sh \ secure-drv-outputs.nix \ multiple-outputs.nix \ - multiple-outputs.a.builder.sh multiple-outputs.b.builder.sh \ $(wildcard lang/*.nix) $(wildcard lang/*.exp) $(wildcard lang/*.exp.xml) $(wildcard lang/*.flags) $(wildcard lang/dir*/*.nix) \ common.sh.in diff --git a/tests/multiple-outputs.a.builder.sh b/tests/multiple-outputs.a.builder.sh deleted file mode 100644 index 657b7ea0adc5..000000000000 --- a/tests/multiple-outputs.a.builder.sh +++ /dev/null @@ -1,6 +0,0 @@ -mkdir $first -mkdir $second -test -z $all - -echo "second" > $first/file -echo "first" > $second/file diff --git a/tests/multiple-outputs.b.builder.sh b/tests/multiple-outputs.b.builder.sh deleted file mode 100644 index acf9390628d6..000000000000 --- a/tests/multiple-outputs.b.builder.sh +++ /dev/null @@ -1,7 +0,0 @@ -mkdir $out -test "$firstOutput $secondOutput" = "$allOutputs" -test "$defaultOutput" = "$firstOutput" -test "$(cat $firstOutput/file)" = "second" -test "$(cat $secondOutput/file)" = "first" - -echo "success" > $out/file diff --git a/tests/multiple-outputs.nix b/tests/multiple-outputs.nix index e8fbf91bfa89..a4cf0caea476 100644 --- a/tests/multiple-outputs.nix +++ b/tests/multiple-outputs.nix @@ -1,23 +1,35 @@ with import ./config.nix; -let +rec { a = mkDerivation { name = "multiple-outputs-a"; outputs = [ "first" "second" ]; - builder = ./multiple-outputs.a.builder.sh; + builder = builtins.toFile "builder.sh" + '' + mkdir $first $second + test -z $all + echo "second" > $first/file + echo "first" > $second/file + ''; helloString = "Hello, world!"; }; -in - -assert a.second.helloString == "Hello, world!"; + b = mkDerivation { + defaultOutput = assert a.second.helloString == "Hello, world!"; a; + firstOutput = a.first.first; + secondOutput = a.second.first.first.second.second.first.second; + allOutputs = a.all; + name = "multiple-outputs-b"; + builder = builtins.toFile "builder.sh" + '' + mkdir $out + test "$firstOutput $secondOutput" = "$allOutputs" + test "$defaultOutput" = "$firstOutput" + test "$(cat $firstOutput/file)" = "second" + test "$(cat $secondOutput/file)" = "first" + echo "success" > $out/file + ''; + }; -mkDerivation { - defaultOutput = a; - firstOutput = a.first.first; - secondOutput = a.second.first.first.second.second.first.second; - allOutputs = a.all; - name = "multiple-outputs-b"; - builder = ./multiple-outputs.b.builder.sh; } diff --git a/tests/multiple-outputs.sh b/tests/multiple-outputs.sh index d3ebdbea3498..dadd2e25f6b6 100644 --- a/tests/multiple-outputs.sh +++ b/tests/multiple-outputs.sh @@ -2,14 +2,6 @@ source common.sh echo "Testing multiple outputs..." -drvPath=$(nix-instantiate multiple-outputs.nix) - -echo "derivation is $drvPath" - -outPath=$(nix-store -rvv "$drvPath") - +outPath=$(nix-build multiple-outputs.nix -A b) echo "output path is $outPath" - -text=$(cat "$outPath"/file) -if test "$text" != "success"; then exit 1; fi - +[ "$(cat "$outPath"/file)" = "success" ] -- cgit 1.4.1