diff options
author | Robert Hensing <robert@roberthensing.nl> | 2024-01-29 07:56:35 +0100 |
---|---|---|
committer | Robert Hensing <robert@roberthensing.nl> | 2024-04-04 11:54:45 +0200 |
commit | 42d3b54f0dab73e42e6643e0a3c0ee140b6c8112 (patch) | |
tree | 551e00961598c1758f8367c4d7ab9a06f9f7db13 /lib/tests | |
parent | 5b49672af44875df0449f7ff1b55965eedeec1da (diff) |
lib.types.attrTag: Take options instead of types
Diffstat (limited to 'lib/tests')
-rw-r--r-- | lib/tests/modules/types-attrTag.nix | 49 |
1 files changed, 34 insertions, 15 deletions
diff --git a/lib/tests/modules/types-attrTag.nix b/lib/tests/modules/types-attrTag.nix index 1a0a0f7ba01e4..b105d01512dc5 100644 --- a/lib/tests/modules/types-attrTag.nix +++ b/lib/tests/modules/types-attrTag.nix @@ -8,37 +8,55 @@ in intStrings = mkOption { type = types.attrsOf (types.attrTag { - left = types.int; - right = types.str; + left = mkOption { + type = types.int; + }; + right = mkOption { + type = types.str; + }; }); }; nested = mkOption { type = types.attrTag { - left = types.int; - right = types.attrTag { - left = types.int; - right = types.str; + left = mkOption { + type = types.int; + }; + right = mkOption { + type = types.attrTag { + left = mkOption { + type = types.int; + }; + right = mkOption { + type = types.str; + }; + }; }; }; }; merged = mkOption { type = types.attrsOf ( types.attrTag { - yay = types.int; + yay = mkOption { + type = types.int; + }; } ); }; submodules = mkOption { type = types.attrsOf ( types.attrTag { - foo = types.submodule { - options = { - bar = mkOption { - type = types.int; + foo = mkOption { + type = types.submodule { + options = { + bar = mkOption { + type = types.int; + }; }; }; }; - qux = types.str; + qux = mkOption { + type = types.str; + }; } ); }; @@ -50,7 +68,9 @@ in options.merged = mkOption { type = types.attrsOf ( types.attrTag { - nay = types.bool; + nay = mkOption { + type = types.bool; + }; } ); }; @@ -76,8 +96,7 @@ in assert config.merged.positive.yay == 100; # assert lib.foldl' (a: b: builtins.trace b a) true (lib.attrNames config.docs); assert config.docs."submodules.<name>.foo.bar".type == "signed integer"; - # It's not an option, so we can't render it as such. Something would be nice though. - assert ! (config.docs?"submodules.<name>.qux"); + assert config.docs."submodules.<name>.qux".type == "string"; true; }; } |