From 91d3c30ab8e560d93e310f0d28c84afa8199ef05 Mon Sep 17 00:00:00 2001 From: picnoir Date: Fri, 6 Mar 2026 10:26:01 +0100 Subject: [PATCH] tests: add direnv integration test Making sure upstream direnv module works as intended. --- testFlake/container-tests.nix | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/testFlake/container-tests.nix b/testFlake/container-tests.nix index 4f4a1b7..0c10677 100644 --- a/testFlake/container-tests.nix +++ b/testFlake/container-tests.nix @@ -190,14 +190,19 @@ in ''; }; - container-systemd-packages = makeContainerTestFor "systemd-packages" { + # Test NixOS modules integrations + container-upstream-modules = makeContainerTestFor "upstream-packages" { modules = [ ( { pkgs, ... }: { - imports = [ "${nixpkgs}/nixos/modules/services/security/fail2ban.nix" ]; + imports = [ + "${nixpkgs}/nixos/modules/services/security/fail2ban.nix" + "${nixpkgs}/nixos/modules/programs/direnv.nix" + ]; config = { + programs.direnv.enable = true; # Enabling fail2ban to test systemd units overrides and # systemd.packages options. services.fail2ban = { @@ -240,6 +245,10 @@ in assert unit.exists, "fail2ban.service unit file should exist" assert unit.is_symlink or unit.is_file, "fail2ban.service should be a file or symlink" machine.wait_for_unit("fail2ban.service") + with subtest ("Direnv integration should work"): + machine.succeed("test -f /etc/direnv/direnv.toml") + machine.succeed("test -f /etc/direnv/direnvrc") + machine.succeed("which direnv") ''; }; }