nix-community.nixvim/tests/extend.nix
traxys 9cd3721adf
standalone: Allow to extend a standalone derivation with a new module (#1142)
This adds the `nixvimExtend` attribute to the generated standalone
derivation, this attribute takes a module as an argument and returns a
new standalone derivation with the initial module & the extended module
merged together.
2024-02-22 08:22:21 +01:00

28 lines
664 B
Nix

{
makeNixvimWithModule,
pkgs,
}: let
firstStage = makeNixvimWithModule {
module = {
extraConfigLua = "-- first stage";
};
};
secondStage = firstStage.nixvimExtend {extraConfigLua = "-- second stage";};
generated = secondStage.nixvimExtend {extraConfigLua = "-- third stage";};
in
pkgs.runCommand "extend-test" {
printConfig = "${generated}/bin/nixvim-print-init";
} ''
config=$($printConfig)
for stage in "first" "second" "third"; do
if ! "$printConfig" | grep -q -- "-- $stage stage"; then
echo "Missing $stage stage in config"
echo "$config"
exit 1
fi
done
touch $out
''