From 090b929b8ab9b7df11825554828f0cb51e9eab9b Mon Sep 17 00:00:00 2001 From: Rebecca Turner Date: Mon, 27 Nov 2023 17:14:36 -0800 Subject: lib.packagesFromDirectoryRecursive: init Co-authored-by: Gabriella Gonzalez --- lib/tests/misc.nix | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) (limited to 'lib/tests/misc.nix') diff --git a/lib/tests/misc.nix b/lib/tests/misc.nix index 9f1fee2ba234..87b63eb4d5fc 100644 --- a/lib/tests/misc.nix +++ b/lib/tests/misc.nix @@ -1988,4 +1988,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"; + }; } -- cgit 1.4.1