1
0
Fork 0
mirror of https://github.com/nix-community/home-manager.git synced 2025-11-08 11:36:05 +01:00

eza: add tests

This commit is contained in:
Austin Horstman 2025-04-27 12:56:26 -05:00
parent edaeeda264
commit 7b2aae3fb3
9 changed files with 220 additions and 0 deletions

View file

@ -35,6 +35,7 @@ let
"earthly"
"emacs"
"espanso"
"eza"
"fastfetch"
"feh"
"fzf"

View file

@ -196,6 +196,7 @@ import nmtSrc {
./modules/programs/direnv
./modules/programs/earthly
./modules/programs/emacs
./modules/programs/eza
./modules/programs/fastfetch
./modules/programs/feh
./modules/programs/fish

View file

@ -0,0 +1,38 @@
{
programs = {
bash.enable = true;
eza = {
enable = true;
enableBashIntegration = true;
extraOptions = [
"--group-directories-first"
"--header"
];
icons = "auto";
git = true;
};
};
nmt.script = ''
assertFileExists home-files/.bashrc
assertFileContains \
home-files/.bashrc \
"alias eza='eza --icons auto --git --group-directories-first --header'"
assertFileContains \
home-files/.bashrc \
"alias ls=eza"
assertFileContains \
home-files/.bashrc \
"alias ll='eza -l'"
assertFileContains \
home-files/.bashrc \
"alias la='eza -a'"
assertFileContains \
home-files/.bashrc \
"alias lt='eza --tree'"
assertFileContains \
home-files/.bashrc \
"alias lla='eza -la'"
'';
}

View file

@ -0,0 +1,8 @@
{
eza-bash = ./bash.nix;
eza-fish = ./fish.nix;
eza-ion = ./ion.nix;
eza-nushell = ./nushell.nix;
eza-theme = ./theme.nix;
eza-zsh = ./zsh.nix;
}

View file

@ -0,0 +1,38 @@
{
programs = {
fish.enable = true;
eza = {
enable = true;
enableFishIntegration = true;
extraOptions = [
"--group-directories-first"
"--header"
];
icons = "auto";
git = true;
};
};
nmt.script = ''
assertFileExists home-files/.config/fish/config.fish
assertFileContains \
home-files/.config/fish/config.fish \
"alias eza 'eza --icons auto --git --group-directories-first --header'"
assertFileContains \
home-files/.config/fish/config.fish \
"alias ls eza"
assertFileContains \
home-files/.config/fish/config.fish \
"alias ll 'eza -l'"
assertFileContains \
home-files/.config/fish/config.fish \
"alias la 'eza -a'"
assertFileContains \
home-files/.config/fish/config.fish \
"alias lt 'eza --tree'"
assertFileContains \
home-files/.config/fish/config.fish \
"alias lla 'eza -la'"
'';
}

View file

@ -0,0 +1,38 @@
{
programs = {
ion.enable = true;
eza = {
enable = true;
enableIonIntegration = true;
extraOptions = [
"--group-directories-first"
"--header"
];
icons = "auto";
git = true;
};
};
nmt.script = ''
assertFileExists home-files/.config/ion/initrc
assertFileContains \
home-files/.config/ion/initrc \
"alias eza = 'eza --icons auto --git --group-directories-first --header'"
assertFileContains \
home-files/.config/ion/initrc \
"alias ls = eza"
assertFileContains \
home-files/.config/ion/initrc \
"alias ll = 'eza -l'"
assertFileContains \
home-files/.config/ion/initrc \
"alias la = 'eza -a'"
assertFileContains \
home-files/.config/ion/initrc \
"alias lt = 'eza --tree'"
assertFileContains \
home-files/.config/ion/initrc \
"alias lla = 'eza -la'"
'';
}

View file

@ -0,0 +1,38 @@
{
programs = {
nushell.enable = true;
eza = {
enable = true;
enableNushellIntegration = true;
extraOptions = [
"--group-directories-first"
"--header"
];
icons = "auto";
git = true;
};
};
nmt.script = ''
assertFileExists home-files/.config/nushell/config.nu
assertFileContains \
home-files/.config/nushell/config.nu \
'alias "eza" = eza --icons auto --git --group-directories-first --header'
assertFileContains \
home-files/.config/nushell/config.nu \
'alias "ls" = eza'
assertFileContains \
home-files/.config/nushell/config.nu \
'alias "ll" = eza -l'
assertFileContains \
home-files/.config/nushell/config.nu \
'alias "la" = eza -a'
assertFileContains \
home-files/.config/nushell/config.nu \
'alias "lt" = eza --tree'
assertFileContains \
home-files/.config/nushell/config.nu \
'alias "lla" = eza -la'
'';
}

View file

@ -0,0 +1,20 @@
{
programs.eza = {
enable = true;
theme = {
colors = {
background = "254";
foreground = "237";
};
};
};
nmt.script = ''
assertFileExists home-files/.config/eza/theme.yml
assertFileContent home-files/.config/eza/theme.yml ${builtins.toFile "eza-theme-expected.yml" ''
colors:
background: '254'
foreground: '237'
''}
'';
}

View file

@ -0,0 +1,38 @@
{
programs = {
zsh.enable = true;
eza = {
enable = true;
enableZshIntegration = true;
extraOptions = [
"--group-directories-first"
"--header"
];
icons = "auto";
git = true;
};
};
nmt.script = ''
assertFileExists home-files/.zshrc
assertFileContains \
home-files/.zshrc \
"alias -- eza='eza --icons auto --git --group-directories-first --header'"
assertFileContains \
home-files/.zshrc \
"alias -- ls=eza"
assertFileContains \
home-files/.zshrc \
"alias -- ll='eza -l'"
assertFileContains \
home-files/.zshrc \
"alias -- la='eza -a'"
assertFileContains \
home-files/.zshrc \
"alias -- lt='eza --tree'"
assertFileContains \
home-files/.zshrc \
"alias -- lla='eza -la'"
'';
}