nixpkgs/nixos/modules/misc/documentation/test.nix
2022-07-21 15:32:10 +02:00

50 lines
1.1 KiB
Nix

{ nixosLib, pkgsModule, runCommand }:
let
sys = nixosLib.evalModules rec {
modules = [
pkgsModule
../documentation.nix
../version.nix
({ lib, someArg, ... }: {
# Make sure imports from specialArgs are respected
imports = [ someArg.myModule ];
# TODO test this
meta.doc = ./test-dummy.chapter.xml;
})
{
_module.args = {
baseModules = [
../documentation.nix
../version.nix
];
extraModules = [ ];
inherit modules;
};
documentation.nixos.includeAllModules = true;
}
];
specialArgs.someArg.myModule = { lib, ... }: {
options.foobar = lib.mkOption {
type = lib.types.str;
description = "The foobar option was added via specialArgs";
default = "qux";
};
};
};
in
runCommand "documentation-check"
{
inherit (sys.config.system.build.manual) optionsJSON;
} ''
json="$optionsJSON/share/doc/nixos/options.json"
echo checking $json
grep 'The foobar option was added via specialArgs' <"$json" >/dev/null
touch $out
''