about summary refs log tree commit diff
path: root/pkgs/build-support/trivial-builders/test.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/build-support/trivial-builders/test.nix')
-rw-r--r--pkgs/build-support/trivial-builders/test.nix32
1 files changed, 29 insertions, 3 deletions
diff --git a/pkgs/build-support/trivial-builders/test.nix b/pkgs/build-support/trivial-builders/test.nix
index 0902a5372221..cdc16b8af34d 100644
--- a/pkgs/build-support/trivial-builders/test.nix
+++ b/pkgs/build-support/trivial-builders/test.nix
@@ -1,5 +1,27 @@
-{ lib, nixosTest, path, writeText, hello, figlet, stdenvNoCC }:
+{ lib, nixosTest, pkgs, writeText, hello, figlet, stdenvNoCC }:
 
+# -------------------------------------------------------------------------- #
+#
+#                         trivial-builders test
+#
+# -------------------------------------------------------------------------- #
+#
+#  This file can be run independently (quick):
+#
+#      $ pkgs/build-support/trivial-builders/test.sh
+#
+#  or in the build sandbox with a ~20s VM overhead
+#
+#      $ nix-build -A tests.trivial-builders
+#
+# -------------------------------------------------------------------------- #
+
+let
+  invokeSamples = file:
+    lib.concatStringsSep " " (
+      lib.attrValues (import file { inherit pkgs; })
+    );
+in
 nixosTest {
   name = "nixpkgs-trivial-builders";
   nodes.machine = { ... }: {
@@ -10,11 +32,15 @@ nixosTest {
     environment.etc."pre-built-paths".source = writeText "pre-built-paths" (
       builtins.toJSON [hello figlet stdenvNoCC]
     );
+    environment.variables = {
+      SAMPLE = invokeSamples ./test/sample.nix;
+      REFERENCES = invokeSamples ./test/invoke-writeReferencesToFile.nix;
+      DIRECT_REFS = invokeSamples ./test/invoke-writeDirectReferencesToFile.nix;
+    };
   };
   testScript = ''
     machine.succeed("""
-      cd ${lib.cleanSource path}
-      ./pkgs/build-support/trivial-builders/test.sh 2>/dev/console
+      ${./test.sh} 2>/dev/console
     """)
   '';
 }