aboutsummaryrefslogtreecommitdiff
path: root/tests/nixos/util.nix
blob: 0c51cc07553154319935afc526b3014d964b366f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
{
  mkNixBuildTest = { name, expressionFile, extraMachineConfig ? {} }:
    { lib, pkgs, ... }:
    {
      inherit name;

      nodes.machine = {
        imports = [extraMachineConfig];
        nix.nixPath = ["nixpkgs=${pkgs.path}"];
        nix.settings.substituters = lib.mkForce [];
        virtualisation.additionalPaths = [
          expressionFile
          (pkgs.callPackage expressionFile {}).inputDerivation
        ];
      };

      testScript = { nodes }: ''
        start_all()

        machine.succeed('nix-build --expr "let pkgs = import <nixpkgs> {}; in pkgs.callPackage ${expressionFile} {}"')
      '';
    };
}