lib/tests: Add tests for recursive disabledModules

Changed files
+38
lib
+6
lib/tests/modules.sh
···
## Paths should be allowed as values and work as expected
checkConfigOutput "true" config.submodule.enable ./declare-submoduleWith-path.nix
+
# Check that disabledModules works recursively and correctly
+
checkConfigOutput "true" config.enable ./disable-recursive/main.nix
+
checkConfigOutput "true" config.enable ./disable-recursive/{main.nix,disable-foo.nix}
+
checkConfigOutput "true" config.enable ./disable-recursive/{main.nix,disable-bar.nix}
+
checkConfigError 'The option .* defined in .* does not exist' config.enable ./disable-recursive/{main.nix,disable-foo.nix,disable-bar.nix}
+
cat <<EOF
====== module tests ======
$pass Pass
+5
lib/tests/modules/disable-recursive/bar.nix
···
+
{
+
imports = [
+
../declare-enable.nix
+
];
+
}
+7
lib/tests/modules/disable-recursive/disable-bar.nix
···
+
{
+
+
disabledModules = [
+
./bar.nix
+
];
+
+
}
+7
lib/tests/modules/disable-recursive/disable-foo.nix
···
+
{
+
+
disabledModules = [
+
./foo.nix
+
];
+
+
}
+5
lib/tests/modules/disable-recursive/foo.nix
···
+
{
+
imports = [
+
../declare-enable.nix
+
];
+
}
+8
lib/tests/modules/disable-recursive/main.nix
···
+
{
+
imports = [
+
./foo.nix
+
./bar.nix
+
];
+
+
enable = true;
+
}