feat(testing): expose evaled as attrs and beautify a bit

This commit is contained in:
Jaka Hudoklin 2019-03-11 20:50:26 +01:00
parent 7da954157c
commit a3f62c3127
No known key found for this signature in database
GPG key ID: 6A08896BFD32BD95

View file

@ -118,11 +118,13 @@ let
inherit modules; inherit modules;
}).config.test; }).config.test;
evaled' = kubenix.evalModules {
inherit modules;
};
evaled = evaled =
if test.enable then kubenix.evalModules { if cfg.throwError then evaled'
inherit modules; else if (builtins.tryEval evaled'.config.test.assertions).success then evaled' else null;
}
else {success = false;};
in { in {
options = { options = {
name = mkOption { name = mkOption {
@ -150,11 +152,7 @@ let
evaled = mkOption { evaled = mkOption {
description = "Wheter test was evaled"; description = "Wheter test was evaled";
type = types.bool; type = types.nullOr types.attrs;
default =
if cfg.throwError
then if evaled.config.test.assertions != [] then true else true
else (builtins.tryEval evaled.config.test.assertions).success;
internal = true; internal = true;
}; };
@ -249,7 +247,7 @@ in {
default = { default = {
success = cfg.success; success = cfg.success;
tests = map (test: { tests = map (test: {
inherit (test) name description evaled success test; inherit (test) name description success test;
assertions = moduleToAttrs test.assertions; assertions = moduleToAttrs test.assertions;
}) (filter (test: test.enable) cfg.tests); }) (filter (test: test.enable) cfg.tests);
}; };