diff options
Diffstat (limited to 'lib/tests')
-rwxr-xr-x | lib/tests/modules.sh | 8 | ||||
-rw-r--r-- | lib/tests/modules/declare-option-set.nix | 3 |
2 files changed, 11 insertions, 0 deletions
diff --git a/lib/tests/modules.sh b/lib/tests/modules.sh index d87f9db0a900..1b3d01646d84 100755 --- a/lib/tests/modules.sh +++ b/lib/tests/modules.sh @@ -199,6 +199,14 @@ checkConfigOutput "true" config.conditionalWorks ./declare-attrsOf.nix ./attrsOf checkConfigOutput "false" config.conditionalWorks ./declare-lazyAttrsOf.nix ./attrsOf-conditional-check.nix checkConfigOutput "empty" config.value.foo ./declare-lazyAttrsOf.nix ./attrsOf-conditional-check.nix +# Check error for when an option set is defined to be a non-attribute set value +checkConfigError 'The option path .* is an attribute set of options, but it is defined to not be an attribute set in' \ + config.value ./declare-option-set.nix ./define-value-int-zero.nix + +# Even with multiple assignments, a type error should be thrown if any of them aren't valid +checkConfigError 'The option value .* in .* is not of type .*' \ + config.value ./declare-int-unsigned-value.nix ./define-value-list.nix ./define-value-int-positive.nix + cat <<EOF ====== module tests ====== $pass Pass diff --git a/lib/tests/modules/declare-option-set.nix b/lib/tests/modules/declare-option-set.nix new file mode 100644 index 000000000000..fddc650ffa90 --- /dev/null +++ b/lib/tests/modules/declare-option-set.nix @@ -0,0 +1,3 @@ +{ + options.value = {}; +} |