mirror of
https://github.com/nix-community/nixvim.git
synced 2025-08-02 17:15:01 +02:00
In our basic template we used to provide a check based on `mkTestDerivationFromNvim`. The issue with this check (that is handled correctly internally) is that some plugins _can't_ be used in the test environment, for example image.nvim like in #1085. This commit introduces a new function to generate such checks, `mkTestDerivationFromNixvimModule`, that wraps a nixvim configuration instead of a built nvim instance. Then a configuration can rely on the newly added `helpers.enableExceptInTests` attribute to disable parts of the configuration depending if it is evaluated in tests or in a real final configuration. Resolves #1085
39 lines
916 B
Nix
39 lines
916 B
Nix
{self, ...}: {
|
|
perSystem = {
|
|
pkgs,
|
|
config,
|
|
system,
|
|
helpers,
|
|
makeNixvimWithModuleUnfree,
|
|
makeNixvimWithModule,
|
|
...
|
|
}: {
|
|
checks = {
|
|
tests = import ../tests {
|
|
inherit pkgs helpers makeNixvimWithModule;
|
|
inherit (pkgs) lib;
|
|
makeNixvim = configuration:
|
|
makeNixvimWithModuleUnfree {
|
|
module = {
|
|
config = configuration;
|
|
};
|
|
};
|
|
};
|
|
|
|
extra-args-tests = import ../tests/extra-args.nix {
|
|
inherit pkgs;
|
|
inherit makeNixvimWithModule;
|
|
};
|
|
|
|
enable-except-in-tests = import ../tests/enable-except-in-tests.nix {
|
|
inherit pkgs makeNixvimWithModule;
|
|
inherit (self.lib.${system}.check) mkTestDerivationFromNixvimModule;
|
|
};
|
|
|
|
lib-tests = import ../tests/lib-tests.nix {
|
|
inherit pkgs helpers;
|
|
inherit (pkgs) lib;
|
|
};
|
|
};
|
|
};
|
|
}
|