i3: add test of keybinding merge logic
(cherry picked from commit c42206db02
)
This commit is contained in:
parent
e9942375ce
commit
4c311835a7
|
@ -20,5 +20,7 @@ import nmt {
|
||||||
"git/with-str-extra-config" = ./modules/programs/git-with-str-extra-config.nix;
|
"git/with-str-extra-config" = ./modules/programs/git-with-str-extra-config.nix;
|
||||||
texlive-minimal = ./modules/programs/texlive-minimal.nix;
|
texlive-minimal = ./modules/programs/texlive-minimal.nix;
|
||||||
xresources = ./modules/xresources.nix;
|
xresources = ./modules/xresources.nix;
|
||||||
|
} // pkgs.lib.optionalAttrs pkgs.stdenv.hostPlatform.isLinux {
|
||||||
|
"i3/keybindings" = ./modules/services/window-managers/i3-keybindings.nix;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
34
tests/modules/services/window-managers/i3-keybindings.nix
Normal file
34
tests/modules/services/window-managers/i3-keybindings.nix
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
{ config, lib, ... }:
|
||||||
|
|
||||||
|
with lib;
|
||||||
|
|
||||||
|
{
|
||||||
|
config = {
|
||||||
|
xsession.windowManager.i3 = {
|
||||||
|
enable = true;
|
||||||
|
|
||||||
|
config.keybindings =
|
||||||
|
let
|
||||||
|
modifier = config.xsession.windowManager.i3.config.modifier;
|
||||||
|
in
|
||||||
|
lib.mkOptionDefault {
|
||||||
|
"${modifier}+Left" = "overridden-command";
|
||||||
|
"${modifier}+Right" = null;
|
||||||
|
"${modifier}+Invented" = "invented-key-command";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
nmt.script = ''
|
||||||
|
assertFileExists home-files/.config/i3/config
|
||||||
|
|
||||||
|
assertFileRegex home-files/.config/i3/config \
|
||||||
|
'bindsym Mod1+Left overridden-command'
|
||||||
|
|
||||||
|
assertFileNotRegex home-files/.config/i3/config \
|
||||||
|
'Mod1+Right'
|
||||||
|
|
||||||
|
assertFileRegex home-files/.config/i3/config \
|
||||||
|
'bindsym Mod1+Invented invented-key-command'
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
}
|
Loading…
Reference in a new issue