Silvan Mosberger
9e6737710c
Revert "Module-builtin assertions, disabling assertions and submodule assertions"
2020-12-18 16:44:37 +01:00
Silvan Mosberger
767d80099c
lib/modules: Introduce _module.checks.*.check
...
Previously the .enable option was used to encode the condition as well,
which lead to some oddness:
- In order to encode an assertion, one had to invert it
- To disable a check, one had to mkForce it
By introducing a separate .check option this is solved because:
- It can be used to encode assertions
- Disabling is done separately with .enable option, whose default can be
overridden without a mkForce
2020-12-17 21:52:24 +01:00
Silvan Mosberger
8dea4df903
lib/modules: Remove _module.checks.*.triggerPath as it's not necessary
...
Previously this option was thought to be necessary to avoid infinite
recursion, but it actually isn't, since the check evaluation isn't fed
back into the module fixed-point.
2020-11-30 23:51:42 +01:00
Silvan Mosberger
c9cc8969b4
lib/modules: Rename _module.assertions to _module.checks
2020-11-30 23:51:41 +01:00
Silvan Mosberger
3e39d6efdf
lib/tests: Add tests for module-builtin assertions
2020-11-30 23:51:23 +01:00
Silvan Mosberger
900c4a5abd
lib/tests: Implement generalized checkConfigCodeOutErr for module tests
2020-11-30 23:51:23 +01:00
Silvan Mosberger
8908766165
lib/tests: Update for error message changes
2020-09-21 18:24:55 +02:00
Silvan Mosberger
4f0982b223
lib/tests: Allow grepping for newlines in error messages
2020-09-21 18:24:54 +02:00
Silvan Mosberger
6a7d250007
lib/tests: Add tests for types.anything
2020-09-15 21:06:05 +02:00
Silvan Mosberger
e0ded8f4ba
lib/modules: Fix freeform modules when there's no definitions
2020-08-10 17:27:33 +02:00
Silvan Mosberger
446d80d28d
lib/tests: Add tests for freeform modules
2020-08-03 22:37:01 +02:00
Silvan Mosberger
0bc7f3440a
lib/tests/modules.sh: Don't depend on $PWD
2020-04-13 17:27:04 +02:00
Silvan Mosberger
742e3fc002
lib/tests: Check for nested option-dependent definitions
2020-03-19 03:50:47 +01:00
Silvan Mosberger
9eecf2d057
Revert "lib/modules: Throw better error when definitions assign to an option set"
...
This reverts commit 15c873b486
.
This was causing infinite recursion when depending on nested options
2020-03-19 03:50:15 +01:00
Robert Hensing
5f357b20b3
Merge pull request #82751 from Infinisil/minor-module-improvements
...
Minor module improvements
2020-03-18 10:06:06 +01:00
Silvan Mosberger
e931de58a2
lib/modules: Fix type checks not being done before merging
...
Co-Authored-By: Robert Hensing <robert@roberthensing.nl>
2020-03-18 04:38:53 +01:00
Silvan Mosberger
15c873b486
lib/modules: Throw better error when definitions assign to an option set
2020-03-18 04:38:50 +01:00
Robert Hensing
31206e44e1
lib/modules: Test the ability for config to depend on options for compatibility
2020-03-17 20:21:10 +01:00
Robert Hensing
9884cb3ed0
Merge pull request #76861 from Infinisil/paths-as-submodules
...
lib/types: Allow paths as submodule values
2020-01-12 14:19:04 +01:00
Silvan Mosberger
ab10e87414
lib/tests: Add tests for attrsOf and lazyAttrsOf
2020-01-10 16:20:31 +01:00
Silvan Mosberger
2955e6bd26
lib/tests: Add test case for imports from derivations
2020-01-10 04:13:28 +01:00
Silvan Mosberger
e9c16ec186
Merge pull request #76857 from Infinisil/recursive-disableModules
...
Apply `disabledModules` recursively
2020-01-09 18:20:12 +01:00
Silvan Mosberger
b89b23b6b2
lib/tests: Add tests for recursive disabledModules
2020-01-09 17:26:08 +01:00
Silvan Mosberger
6525da6321
lib/types: Allow paths as submodule values
2020-01-08 23:54:45 +01:00
rnhmjoj
cde46494c6
lib/tests: remove strictly loaOf tests and rebase on attrsOf
2020-01-06 10:39:19 -05:00
Silvan Mosberger
be3f887ac4
lib/tests: Temporarily disable submodule path test
...
Until https://github.com/NixOS/nixpkgs/pull/76861 or so is merged
2020-01-03 06:02:55 +01:00
Silvan Mosberger
cc81320a46
lib/tests: Add submoduleWith tests
2020-01-02 09:59:35 +01:00
Silvan Mosberger
9a44f44d4c
lib/types: Add oneOf, extension of either to a list of types
2019-08-06 14:08:42 +02:00
(cdep)illabout
81fa1e392b
lib/modules: Change mkAliasOptionModule to use the priority for the alias.
...
This commit changes the `mkAliasOptionModule` function to make sure that
the priority for the aliased option is propagated to the non-aliased
option.
This also affects the `mkRenamedOptionModule` function in a similar
fashion.
This also removes the `mkAliasOptionModuleWithPriority` function, since
its functionality is now subsumed by `mkAliasOptionModule`.
This change was recommended by @nbp:
https://github.com/NixOS/nixpkgs/pull/53397#discussion_r245487432
2019-01-24 13:02:16 +09:00
(cdep)illabout
7314d885a1
Add test that shows that the aliases are able to override options.
2019-01-06 18:10:03 +09:00
(cdep)illabout
da00ec4b45
Add a failing test for mkAliasOptionModule.
2019-01-04 18:34:09 +09:00
Robert Helgesson
08e8701673
lib.types: fix loaOf behavior for long lists
...
Assigning a list of 10 or more elements to an option having the type
`loaOf a` produces a configuration value that is not honoring the
order of the original list. This commit fixes this and a related issue
arising when 10 or more lists are merged into this type of option.
2018-05-07 20:23:52 +02:00
Silvan Mosberger
cd5736116c
lib/types: clear up coercedTo description
2018-05-06 23:58:36 +02:00
Silvan Mosberger
b16a69289a
lib/types: Add coercedTo unsound tests
2018-05-06 23:58:36 +02:00
Profpatsch
462c048c77
lib/types: add ints.positive
.
...
For values that are positive, but cannot be 0.
2017-11-05 15:56:32 +01:00
Profpatsch
f8e6cd3465
lib/types: add tests for ints.between
and ints.unsigned
...
The int types are trivial invocations of `ints.between`, so they are not tested
explicitely.
2017-11-05 15:56:32 +01:00
Daiderd Jordan
d88721e440
modules: add support for module replacement with disabledModules
...
This is based on a prototype Nicolas B. Pierron worked on during a
discussion we had at FOSDEM.
A new version with a workaround for problems of the reverted original.
Discussion: https://github.com/NixOS/nixpkgs/commit/3f2566689
2017-03-03 13:45:22 +01:00
Vladimír Čunát
fcec3e1c72
Revert "modules: add support for module replacement with disabledModules"
...
This reverts commit 3f2566689d
for now.
Evaluation of the tested job got broken, blocking nixos-unstable.
2017-03-01 21:56:01 +01:00
Daiderd Jordan
3f2566689d
modules: add support for module replacement with disabledModules
...
This is based on a prototype Nicolas B. Pierron worked on during a
discussion we had at FOSDEM.
2017-02-28 00:14:48 +01:00
Nikolay Amiantov
5b759293e0
modules lib: type description in type error message
2017-02-03 11:28:33 +01:00
Nikolay Amiantov
fcb20b9fee
module tests: add tests for coercedTo
2017-02-02 01:53:00 +03:00
Nicolas B. Pierron
a6b455bbae
NixOS modules: Add error context on module arguments evaluation.
2015-07-14 15:07:54 +02:00
Nicolas B. Pierron
7f1a782d91
Add tests for the new module system improvements.
2015-03-16 22:38:41 +01:00
Nicolas B. Pierron
de0f122b01
Issue #6161 - Register lib tests as release blockers.
2015-02-09 00:07:44 +01:00
Nicolas B. Pierron
6d15e32536
Issue #6161 - Add tests for NixOS modules.
2015-02-09 00:07:44 +01:00