tests: aggregate all test derivations into one using a linkFarm

This commit is contained in:
Gaetan Lepage 2024-01-04 22:02:23 +01:00 committed by Gaétan Lepage
parent 10d114f5a6
commit 6c3f97ccc0
2 changed files with 46 additions and 36 deletions

View file

@ -59,8 +59,8 @@
config.allowUnfree = true; config.allowUnfree = true;
}; };
in { in {
checks = checks = {
(import ./tests { tests = import ./tests {
inherit pkgs; inherit pkgs;
inherit (pkgs) lib; inherit (pkgs) lib;
# Some nixvim supported plugins require the use of unfree packages. # Some nixvim supported plugins require the use of unfree packages.
@ -75,8 +75,7 @@
config = configuration; config = configuration;
}; };
}; };
}) };
// {
lib-tests = import ./tests/lib-tests.nix { lib-tests = import ./tests/lib-tests.nix {
inherit (pkgs) pkgs lib; inherit (pkgs) pkgs lib;
}; };

View file

@ -12,10 +12,8 @@
inherit lib pkgs; inherit lib pkgs;
root = ./test-sources; root = ./test-sources;
}; };
in
# We attempt to build & execute all configurations exampleFiles = {
builtins.mapAttrs mkTestDerivation (testFiles
// {
example = let example = let
config = import ../example.nix {inherit pkgs;}; config = import ../example.nix {inherit pkgs;};
in in
@ -26,4 +24,17 @@ in
"extraConfigLua" "extraConfigLua"
"extraConfigVim" "extraConfigVim"
]; ];
}) };
# We attempt to build & execute all configurations
derivationList =
pkgs.lib.mapAttrsToList
(
name: path: {
inherit name;
path = mkTestDerivation name path;
}
)
(testFiles // exampleFiles);
in
pkgs.linkFarm "nixvim-tests" derivationList