mirror of
https://github.com/nix-community/home-manager
synced 2024-11-26 06:30:28 +00:00
tests: make enableBig
an option
This makes it possible to identify the test as big in the test file itself. It also seems like a more natural way to control the test running.
This commit is contained in:
parent
adaea605db
commit
5f00024e75
7 changed files with 151 additions and 144 deletions
13
tests/big-test.nix
Normal file
13
tests/big-test.nix
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
{ lib, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
options.test.enableBig = lib.mkOption {
|
||||||
|
type = lib.types.bool;
|
||||||
|
default = true;
|
||||||
|
description = ''
|
||||||
|
Whether to enable <quote>big</quote> tests. These are tests that require
|
||||||
|
more resources than typical tests. For example, tests that depend on large
|
||||||
|
packages or tests that take long to run.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
}
|
|
@ -26,7 +26,9 @@ let
|
||||||
# unnecessary rebuilds of the tests.
|
# unnecessary rebuilds of the tests.
|
||||||
manual.manpages.enable = false;
|
manual.manpages.enable = false;
|
||||||
|
|
||||||
imports = [ ./asserts.nix ./stubs.nix ];
|
imports = [ ./asserts.nix ./big-test.nix ./stubs.nix ];
|
||||||
|
|
||||||
|
test.enableBig = enableBig;
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
||||||
|
@ -55,6 +57,7 @@ import nmt {
|
||||||
./modules/programs/browserpass
|
./modules/programs/browserpass
|
||||||
./modules/programs/dircolors
|
./modules/programs/dircolors
|
||||||
./modules/programs/direnv
|
./modules/programs/direnv
|
||||||
|
./modules/programs/emacs
|
||||||
./modules/programs/feh
|
./modules/programs/feh
|
||||||
./modules/programs/fish
|
./modules/programs/fish
|
||||||
./modules/programs/gh
|
./modules/programs/gh
|
||||||
|
@ -101,6 +104,7 @@ import nmt {
|
||||||
] ++ lib.optionals isLinux [
|
] ++ lib.optionals isLinux [
|
||||||
./modules/config/i18n
|
./modules/config/i18n
|
||||||
./modules/i18n/input-method
|
./modules/i18n/input-method
|
||||||
|
./modules/misc/debug
|
||||||
./modules/misc/gtk
|
./modules/misc/gtk
|
||||||
./modules/misc/numlock
|
./modules/misc/numlock
|
||||||
./modules/misc/pam
|
./modules/misc/pam
|
||||||
|
@ -109,6 +113,7 @@ import nmt {
|
||||||
./modules/misc/xsession
|
./modules/misc/xsession
|
||||||
./modules/programs/abook
|
./modules/programs/abook
|
||||||
./modules/programs/autorandr
|
./modules/programs/autorandr
|
||||||
|
./modules/programs/firefox
|
||||||
./modules/programs/foot
|
./modules/programs/foot
|
||||||
./modules/programs/getmail
|
./modules/programs/getmail
|
||||||
./modules/programs/gnome-terminal
|
./modules/programs/gnome-terminal
|
||||||
|
@ -152,10 +157,5 @@ import nmt {
|
||||||
./modules/services/xsettingsd
|
./modules/services/xsettingsd
|
||||||
./modules/systemd
|
./modules/systemd
|
||||||
./modules/targets-linux
|
./modules/targets-linux
|
||||||
] ++ lib.optionals enableBig [
|
|
||||||
./modules/programs/emacs
|
|
||||||
] ++ lib.optionals (enableBig && isLinux) [
|
|
||||||
./modules/misc/debug
|
|
||||||
./modules/programs/firefox
|
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
{
|
{
|
||||||
debug = { pkgs, config, lib, ... }: {
|
debug = { pkgs, config, lib, ... }:
|
||||||
|
lib.mkIf config.test.enableBig {
|
||||||
home.enableDebugInfo = true;
|
home.enableDebugInfo = true;
|
||||||
home.packages = with pkgs; [ curl gdb ];
|
home.packages = with pkgs; [ curl gdb ];
|
||||||
|
|
||||||
|
|
|
@ -10,7 +10,7 @@ let
|
||||||
|
|
||||||
emacsBin = "${config.programs.emacs.finalPackage}/bin/emacs";
|
emacsBin = "${config.programs.emacs.finalPackage}/bin/emacs";
|
||||||
|
|
||||||
in {
|
in lib.mkIf config.test.enableBig {
|
||||||
programs.emacs = {
|
programs.emacs = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = pkgs.emacs-nox;
|
package = pkgs.emacs-nox;
|
||||||
|
|
|
@ -2,8 +2,7 @@
|
||||||
|
|
||||||
with lib;
|
with lib;
|
||||||
|
|
||||||
{
|
lib.mkIf config.test.enableBig {
|
||||||
config = {
|
|
||||||
programs.firefox = {
|
programs.firefox = {
|
||||||
enable = true;
|
enable = true;
|
||||||
enableGnomeExtensions = true;
|
enableGnomeExtensions = true;
|
||||||
|
@ -34,5 +33,4 @@ with lib;
|
||||||
configuration using 'programs.firefox.package' instead. You can refer to
|
configuration using 'programs.firefox.package' instead. You can refer to
|
||||||
its example for how to do this.
|
its example for how to do this.
|
||||||
''];
|
''];
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,8 +2,7 @@
|
||||||
|
|
||||||
with lib;
|
with lib;
|
||||||
|
|
||||||
{
|
lib.mkIf config.test.enableBig {
|
||||||
config = {
|
|
||||||
programs.firefox = {
|
programs.firefox = {
|
||||||
enable = true;
|
enable = true;
|
||||||
profiles.basic.isDefault = true;
|
profiles.basic.isDefault = true;
|
||||||
|
@ -19,8 +18,7 @@ with lib;
|
||||||
bookmarks = {
|
bookmarks = {
|
||||||
wikipedia = {
|
wikipedia = {
|
||||||
keyword = "wiki";
|
keyword = "wiki";
|
||||||
url =
|
url = "https://en.wikipedia.org/wiki/Special:Search?search=%s&go=Go";
|
||||||
"https://en.wikipedia.org/wiki/Special:Search?search=%s&go=Go";
|
|
||||||
};
|
};
|
||||||
"kernel.org" = { url = "https://www.kernel.org"; };
|
"kernel.org" = { url = "https://www.kernel.org"; };
|
||||||
};
|
};
|
||||||
|
@ -67,5 +65,4 @@ with lib;
|
||||||
$bookmarksFile \
|
$bookmarksFile \
|
||||||
${./profile-settings-expected-bookmarks.html}
|
${./profile-settings-expected-bookmarks.html}
|
||||||
'';
|
'';
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,8 +2,7 @@
|
||||||
|
|
||||||
with lib;
|
with lib;
|
||||||
|
|
||||||
{
|
lib.mkIf config.test.enableBig {
|
||||||
config = {
|
|
||||||
home.stateVersion = "19.09";
|
home.stateVersion = "19.09";
|
||||||
|
|
||||||
programs.firefox.enable = true;
|
programs.firefox.enable = true;
|
||||||
|
@ -27,5 +26,4 @@ with lib;
|
||||||
home-path/bin/firefox \
|
home-path/bin/firefox \
|
||||||
MOZ_APP_LAUNCHER
|
MOZ_APP_LAUNCHER
|
||||||
'';
|
'';
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue