From 933c95c0f40973bd72f1e46767d001a8f1860f40 Mon Sep 17 00:00:00 2001 From: Robert Hensing Date: Tue, 2 Oct 2018 21:49:54 +0200 Subject: Add tests for pkgs.nixos and pkgs.nixosTest --- pkgs/test/default.nix | 2 ++ pkgs/test/nixos-functions/default.nix | 32 ++++++++++++++++++++++++++++++++ 2 files changed, 34 insertions(+) create mode 100644 pkgs/test/nixos-functions/default.nix (limited to 'pkgs/test') diff --git a/pkgs/test/default.nix b/pkgs/test/default.nix index 24948ce9aa4..9315595f8ec 100644 --- a/pkgs/test/default.nix +++ b/pkgs/test/default.nix @@ -30,5 +30,7 @@ with pkgs; cross = callPackage ./cross {}; + nixos-functions = callPackage ./nixos-functions {}; + patch-shebangs = callPackage ./patch-shebangs {}; } diff --git a/pkgs/test/nixos-functions/default.nix b/pkgs/test/nixos-functions/default.nix new file mode 100644 index 00000000000..3f345152539 --- /dev/null +++ b/pkgs/test/nixos-functions/default.nix @@ -0,0 +1,32 @@ +{ pkgs, lib, stdenv, ... }: + +lib.optionalAttrs stdenv.hostPlatform.isLinux ( + pkgs.recurseIntoAttrs { + + nixos-test = (pkgs.nixos { + boot.loader.grub.enable = false; + fileSystems."/".device = "/dev/null"; + }).toplevel; + + nixosTest-test = let + # extend pkgs with an extra overlay to make sure pkgs is passed along properly to machines. + altPkgs = pkgs.extend (self: super: { + # To test pkgs in machine + hello_s9e8ghsi = self.hello; + # To test lib in test + lib = super.lib // { testSubject_dohra8w = "nixosTest"; }; + # To test pkgs in test + dash-test_ny3dseg = "-test"; + }); + in altPkgs.nixosTest ({ lib, pkgs, ... }: { + name = "${lib.testSubject_dohra8w}${pkgs.dash-test_ny3dseg}"; # These would fail if it's the wrong pkgs or lib + machine = { pkgs, ... }: { + environment.systemPackages = [ pkgs.hello_s9e8ghsi ]; + }; + testScript = '' + $machine->succeed("hello"); + ''; + }); + + } +) -- cgit 1.4.1