diff --git a/flake/tests/checks/homeManagerModule.nix b/flake/tests/checks/homeManagerModule.nix index f568243..a14fa03 100644 --- a/flake/tests/checks/homeManagerModule.nix +++ b/flake/tests/checks/homeManagerModule.nix @@ -2,6 +2,7 @@ inputs, nixosTest, homeManagerModules, + testProfile, ... }: nixosTest { @@ -10,8 +11,8 @@ nixosTest { nodes.machine = { imports = [ + testProfile inputs.home-manager.nixosModules.home-manager - ../profiles/minimal.nix ]; config = { @@ -28,39 +29,5 @@ nixosTest { }; }; - testScript = '' - import subprocess - machine.wait_for_unit("default.target") - - def check_errs(process): - # Check for errors - print("Connecting to Neovim process") - - # Capture stdout and stderr - stdout, stderr = process.communicate() - - # Print captured stdout and stderr - if stdout: - print("Captured stdout:") - print(stdout.decode('utf-8')) - if stderr: - print("Captured stderr:") - print(stderr.decode('utf-8')) - - def run_neovim_headless(): - print("Running Neovim in headless mode.") - - # Run Neovim in headless mode - nvim_process = subprocess.Popen(['nvim', '--headless'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE) - - check_errs(nvim_process) - - # Load configuration file - nvim_process.stdin.write(b':NonExistentCommand\n') - nvim_process.stdin.flush() - - # run Neovim in headless mode - # and expect it to return sucessfully - machine.succeed(run_neovim_headless()) - ''; + testScript = ""; } diff --git a/flake/tests/checks/nixosModule.nix b/flake/tests/checks/nixosModule.nix index 961c991..087245a 100644 --- a/flake/tests/checks/nixosModule.nix +++ b/flake/tests/checks/nixosModule.nix @@ -1,6 +1,7 @@ { nixosTest, nixosModules, + testProfile, ... }: nixosTest { @@ -8,8 +9,8 @@ nixosTest { nodes.machine = { imports = [ + testProfile nixosModules.nvf - ../profiles/minimal.nix ]; config = { @@ -17,5 +18,39 @@ nixosTest { }; }; - testScript = ""; + testScript = '' + import subprocess + machine.wait_for_unit("default.target") + + def check_errs(process): + # Check for errors + print("Connecting to Neovim process") + + # Capture stdout and stderr + stdout, stderr = process.communicate() + + # Print captured stdout and stderr + if stdout: + print("Captured stdout:") + print(stdout.decode('utf-8')) + if stderr: + print("Captured stderr:") + print(stderr.decode('utf-8')) + + def run_neovim_headless(): + print("Running Neovim in headless mode.") + + # Run Neovim in headless mode + nvim_process = subprocess.Popen(['nvim', '--headless'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE) + + check_errs(nvim_process) + + # Load configuration file + nvim_process.stdin.write(b':NonExistentCommand\n') + nvim_process.stdin.flush() + + # run Neovim in headless mode + # and expect it to return sucessfully + machine.succeed(run_neovim_headless()) + ''; } diff --git a/flake/tests/default.nix b/flake/tests/default.nix index 11463e4..aa0a40a 100644 --- a/flake/tests/default.nix +++ b/flake/tests/default.nix @@ -16,20 +16,20 @@ defaultInherits = { inherit (config.flake) homeManagerModules nixosModules; inherit inputs; + testProfile = ./profiles/minimal.nix; }; callPackage = callPackageWith (recursiveUpdate pkgs defaultInherits); in { checks = packagesFromDirectoryRecursive { inherit callPackage; - testProfile = ../profiles/minimal.nix; directory = ./checks; }; # expose checks as packages to be built packages = { test-home-manager-module = self'.checks.homeManagerModule.driverInteractive; - test-nixos-module = self'.checks.nixosModule.driverInteractive; + # test-nixos-module = self'.checks.nixosModule.driverInteractive; }; }; }