about summary refs log tree commit diff
path: root/lib/tests/misc.nix
diff options
context:
space:
mode:
authorSilvan Mosberger <contact@infinisil.com>2023-12-19 22:03:01 +0100
committerGitHub <noreply@github.com>2023-12-19 22:03:01 +0100
commitcf47b9a5c0bd33901014cee1178d206646997711 (patch)
treeb3fbfafd4d43a3df8c7200105d5b5e4f7e88d916 /lib/tests/misc.nix
parentbfd600c3fa9350d90804126cb6b22db6ccc752d1 (diff)
parent090b929b8ab9b7df11825554828f0cb51e9eab9b (diff)
downloadnixlib-cf47b9a5c0bd33901014cee1178d206646997711.tar
nixlib-cf47b9a5c0bd33901014cee1178d206646997711.tar.gz
nixlib-cf47b9a5c0bd33901014cee1178d206646997711.tar.bz2
nixlib-cf47b9a5c0bd33901014cee1178d206646997711.tar.lz
nixlib-cf47b9a5c0bd33901014cee1178d206646997711.tar.xz
nixlib-cf47b9a5c0bd33901014cee1178d206646997711.tar.zst
nixlib-cf47b9a5c0bd33901014cee1178d206646997711.zip
Merge pull request #270537 from 9999years/packagesFromDirectory
lib.packagesFromDirectoryRecursive: init
Diffstat (limited to 'lib/tests/misc.nix')
-rw-r--r--lib/tests/misc.nix33
1 files changed, 33 insertions, 0 deletions
diff --git a/lib/tests/misc.nix b/lib/tests/misc.nix
index 2884e880e13a..cf7fa9f2e284 100644
--- a/lib/tests/misc.nix
+++ b/lib/tests/misc.nix
@@ -2055,4 +2055,37 @@ runTests {
     expr = meta.platformMatch { } "x86_64-linux";
     expected = false;
   };
+
+  testPackagesFromDirectoryRecursive = {
+    expr = packagesFromDirectoryRecursive {
+      callPackage = path: overrides: import path overrides;
+      directory = ./packages-from-directory;
+    };
+    expected = {
+      a = "a";
+      b = "b";
+      # Note: Other files/directories in `./test-data/c/` are ignored and can be
+      # used by `package.nix`.
+      c = "c";
+      my-namespace = {
+        d = "d";
+        e = "e";
+        f = "f";
+        my-sub-namespace = {
+          g = "g";
+          h = "h";
+        };
+      };
+    };
+  };
+
+  # Check that `packagesFromDirectoryRecursive` can process a directory with a
+  # top-level `package.nix` file into a single package.
+  testPackagesFromDirectoryRecursiveTopLevelPackageNix = {
+    expr = packagesFromDirectoryRecursive {
+      callPackage = path: overrides: import path overrides;
+      directory = ./packages-from-directory/c;
+    };
+    expected = "c";
+  };
 }