diff options
| author | sommerfeld <sommerfeld@sommerfeld.dev> | 2026-09-26 22:23:04 +0100 |
|---|---|---|
| committer | sommerfeld <sommerfeld@sommerfeld.dev> | 2026-09-26 22:23:04 +0100 |
| commit | b613ae6e9eb764b1b29b3e383644d494e9604e00 (patch) | |
| tree | 84408ebc07ae1bf2d8f30a67733ac1d56e5a5841 /tests | |
| parent | 03306193262f9400d6e60ab11bc1f8bfc056bb7e (diff) | |
| download | dotfiles-b613ae6e9eb764b1b29b3e383644d494e9604e00.tar.gz dotfiles-b613ae6e9eb764b1b29b3e383644d494e9604e00.tar.bz2 dotfiles-b613ae6e9eb764b1b29b3e383644d494e9604e00.zip | |
Set consistent corporate application defaults
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/test_canonical_defaults.py | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/tests/test_canonical_defaults.py b/tests/test_canonical_defaults.py new file mode 100644 index 0000000..6ddb767 --- /dev/null +++ b/tests/test_canonical_defaults.py @@ -0,0 +1,60 @@ +import json +import subprocess +import unittest +from pathlib import Path + +ROOT = Path(__file__).resolve().parents[1] + + +def chezmoi(role, *args): + return subprocess.check_output( + [ + "chezmoi", + "--config", + "/dev/null", + "--config-format", + "toml", + "--override-data", + json.dumps({"machineRole": role}), + "-S", + str(ROOT), + *args, + ], + text=True, + ) + + +class DefaultTests(unittest.TestCase): + def test_corporate_defaults_use_managed_launchers(self): + rendered = chezmoi( + "canonical", + "execute-template", + "--file", + str(ROOT / "dot_config/mimeapps.list.tmpl"), + ) + for value in ( + "inode/directory=dotfiles-yazi.desktop", + "text/plain=dotfiles-nvim.desktop", + "image/png=imv.desktop", + "application/pdf=org.pwmt.zathura.desktop", + ): + self.assertIn(value, rendered) + + def test_launchers_are_corporate_only_and_use_ghostty(self): + for role in ("host", "vm", "canonical"): + files = chezmoi(role, "managed", "--include=files").splitlines() + for app in ("yazi", "nvim"): + target = f".local/share/applications/dotfiles-{app}.desktop" + self.assertEqual(target in files, role == "canonical") + entry = chezmoi( + role, + "execute-template", + "--file", + str( + ROOT + / f"dot_local/share/applications/dotfiles-{app}.desktop.tmpl" + ), + ) + self.assertIn("Exec=/snap/bin/ghostty -e ", entry) + self.assertIn(f'/.nix-profile/bin/{app}"', entry) + self.assertIn("Terminal=false", entry) |
