about summary refs log tree commit diff
diff options
context:
space:
mode:
authorEelco Dolstra <e.dolstra@tudelft.nl>2011-12-20T17·08+0000
committerEelco Dolstra <e.dolstra@tudelft.nl>2011-12-20T17·08+0000
commit1f3b0ede7d9b6292e054f8e5ecc52a83cbba1f09 (patch)
tree9c1043951f61483eb26c23f2a68291e9926b4dd4
parent46e42c92c1444e1dd3aec871b3750bcd7391f60e (diff)
* Add a (currently failing) test that checks whether mutually
  recursive outputs are properly rejected.
* Add a (also failing) test for "nix-build -A <output-name>".

-rw-r--r--tests/multiple-outputs.nix11
-rw-r--r--tests/multiple-outputs.sh11
2 files changed, 22 insertions, 0 deletions
diff --git a/tests/multiple-outputs.nix b/tests/multiple-outputs.nix
index a4cf0caea476..7be96703d677 100644
--- a/tests/multiple-outputs.nix
+++ b/tests/multiple-outputs.nix
@@ -32,4 +32,15 @@ rec {
       '';
   };
 
+  cyclic = (mkDerivation {
+    name = "cyclic-outputs";
+    outputs = [ "a" "b" ];
+    builder = builtins.toFile "builder.sh"
+      ''
+        mkdir $a $b
+        echo $a > $b/foo
+        echo $b > $a/bar
+      '';
+  }).a;
+
 }
diff --git a/tests/multiple-outputs.sh b/tests/multiple-outputs.sh
index dadd2e25f6b6..d4185c55bcc8 100644
--- a/tests/multiple-outputs.sh
+++ b/tests/multiple-outputs.sh
@@ -5,3 +5,14 @@ echo "Testing multiple outputs..."
 outPath=$(nix-build multiple-outputs.nix -A b)
 echo "output path is $outPath"
 [ "$(cat "$outPath"/file)" = "success" ]
+
+# Make sure that nix-build works on derivations with multiple outputs.
+nix-build multiple-outputs.nix -A a.first
+
+# Cyclic outputs should be rejected.
+if nix-build multiple-outputs.nix -A cyclic; then
+    echo "Cyclic outputs incorrectly accepted!"
+    exit 1
+fi
+
+clearStore