This adds a "test.asserts" module that currently just provides a convenient way to assert on the content of warnings. By default all tests will assert that no warnings are given.wip/yesman
parent
4dedfcfd95
commit
9d53afb709
@ -0,0 +1,43 @@ |
||||
{ config, lib, pkgs, ... }: |
||||
|
||||
with lib; |
||||
|
||||
{ |
||||
options.test.asserts = { |
||||
warnings = { |
||||
enable = mkOption { |
||||
type = types.bool; |
||||
default = true; |
||||
description = "Whether warning asserts are enabled."; |
||||
}; |
||||
|
||||
expected = mkOption { |
||||
type = types.listOf types.str; |
||||
default = [ ]; |
||||
description = '' |
||||
List of expected warnings. |
||||
''; |
||||
}; |
||||
}; |
||||
}; |
||||
|
||||
config = mkIf config.test.asserts.warnings.enable { |
||||
home.file = { |
||||
"asserts/warnings.actual".text = concatStringsSep '' |
||||
|
||||
-- |
||||
'' config.warnings; |
||||
}; |
||||
|
||||
nmt.script = '' |
||||
assertFileContent \ |
||||
home-files/asserts/warnings.actual \ |
||||
${ |
||||
pkgs.writeText "warnings.expected" (concatStringsSep '' |
||||
|
||||
-- |
||||
'' config.test.asserts.warnings.expected) |
||||
} |
||||
''; |
||||
}; |
||||
} |
Loading…
Reference in new issue