summary refs log tree commit diff
path: root/nixos/tests
Commit message (Collapse)AuthorAge
* tests/boot: Remove unused store contentsWilliam A. Kennington III2015-07-08
|
* nixos/tests/installer: Add a testcase for fat32 /bootWilliam A. Kennington III2015-07-08
|
* nixos docker: fix service and testLuca Bruno2015-07-05
|
* nixos/tests/chromium: Improve sandbox checking.aszlig2015-07-04
| | | | | | | | We no longer need have "SUID sandbox" enabled in the chrome://sandbox status page and we now also check for "You are adequately sandboxed." to be absolutely sure that we're running with proper sandboxing. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* Installer test: Fix booting from SCSIEelco Dolstra2015-06-17
| | | | This is required by the GRUB 1 test.
* Initial attempt at configuring from EC2 userdata (with input from cstrahan). ↵Dan Peebles2015-06-11
| | | | Now with VM tests!
* Simple EC2 user-data VM testDan Peebles2015-06-11
|
* Installer test: Remove apparently useless setting of nix.readOnlyStoreEelco Dolstra2015-06-10
|
* Installer tests: Don't use the ISOEelco Dolstra2015-06-10
| | | | | | | | | We already have separate tests for checking whether the ISO boots correctly, so it's not necessary to do that here. So now tests/installer.nix just tests nixos-install, from a regular NixOS VM that uses the host's Nix store. This makes running the tests more convenient because we don't have to build a new ISO after every change.
* Remove dead codeEelco Dolstra2015-06-03
|
* nixos: Add small VM test for lightdm.aszlig2015-05-27
| | | | | | | | | | | | | | Serves as a regression test for #7902. It's not yet referenced in release(-combined)?.nix because it will fail until the issue is resolved. Tested successfully against libgcrypt with libcap passed as null however. As for the test itself, I'm not quite sure whether checking for the time displayed by IceWM is a good idea, but we can still fix that if it turns out to be a problem. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* nixos/installer: Make test install disk larger to support the expressionsWilliam A. Kennington III2015-05-25
|
* nixos/tests/chromium: Detect popup using OCR.aszlig2015-05-22
| | | | | | | | | | | | | This will make the test a lot more reliable, because we no longer need to press ESC multiple times hoping that it will close the popup. Unfortunately in order to run this test I needed to locally revert the gyp update from a305e6855dd8723683c77635f45ae28411c8f36c. With the old gyp version however the test runs fine and it's able to properly detect the popup. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* nixos/test-driver: Make tesseract OCR optional.aszlig2015-05-22
| | | | | | | | | | | | | | | | | By default this is now enabled, and it has to be explicitely enabled using "enableOCR = true". If it is set to false, any usage of getScreenText or waitForText will fail with an error suggesting to pass enableOCR. This should get rid of the rather large dependency on tesseract which we don't need for most tests. Note, that I'm using system("type -P") here to check whether tesseract is in PATH. I know it's a bashism but we already have other bashisms within the test scripts and we also run it with bash, so IMHO it's not a problem here. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* nixos/tests/luksroot: Switch to use waitForText.aszlig2015-05-21
| | | | | | | | Fixes the "blindly hope that 60 seconds is enough" issue from 1f34503, so that we now have a (hopefully) reliable way to wait for the passphrase prompt. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* nixos/tests/installer: Add test for LUKS rootfs.aszlig2015-05-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This serves as a regression test for #7859. It's pretty straightforward, except from the fact that nixos-generate- config doesn't detect LUKS devices and the "sleep 60". As for the former, I have tried to add support for LUKS devices for nixos-generate-config, but it's not so easy as it sounds, because we need to create a device tree across all possible mappers and/or LVM up to the "real" device and then decide whether it is relevant to what is currently mounted. So I guess this is something for the nixpart branch (see #2079). And the latter isn't very trivial as well, because the LUKS passphrase prompt is issued on /dev/console, which is the last "console=..." kernel parameter (thus the `mkAfter`). So we can't simply grep the log, because the prompt ends up being on one terminal only (tty0) and using select() on $machine->{socket} doesn't work very well, because the FD is always "ready for read". If we would read the FD, we would conflict with $machine->connect and end up having an inconsistent state. Another idea would be to use multithreading to do $machine->connect while feeding the passphrase prompt in a loop and stop the thread once $machine->connect is done. Turns out that this is not so easy as well, because the threads need to share the $machine object and of course need to do properly locking. In the end I decided to use the "blindly hope that 60 seconds is enough" approach for now and come up with a better solution later. Other VM tests surely use sleep as well, but it's $machine->sleep, which is bound to the clock of the VM, so if the build machine is on high load, a $machine->sleep gets properly delayed but the timer outside the VM won't get that delay, so the test is not deterministic. Tested against the following revisions: 5e3fe39: Before the libgcrypt cleanup (a71f78a) that broke cryptsetup. 69a6848: While cryptsetup was broken (obviously the test failed). 15faa43: After cryptsetup has been switched to OpenSSL (fd588f9). Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* nixos/tests/installer: Allow pre-boot commands.aszlig2015-05-21
| | | | | | | | These commands will be executed directly after the machine is created, so it gives us the chance to for example type in passphrases using the virtual keyboard. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* nixos/tests/installer: Allow to pass extra config.aszlig2015-05-21
| | | | | | | | We're going to need it for installer tests where nixos-generate-config isn't yet able to fully detect the filesystems/hardware. for example for device mapper configurations other than LVM. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* Drop GNOME 3.12Luca Bruno2015-05-18
|
* cups: Second attempt to fix our printing tests; add more sleep statementsJascha Geerds2015-05-14
|
* Remove fixed uid in testsEelco Dolstra2015-05-13
|
* cups: First attempt to fix our printing tests; wait until cups is fully ↵Jascha Geerds2015-05-13
| | | | initialized
* cups: Add defaultShared, browsing and webInterace config optionJascha Geerds2015-05-10
|
* cups: Fix printing testsJascha Geerds2015-05-10
| | | | | | | | | | | | | | | | | | | It seems like there's an upstream bug in the "lpstat" command. We need to specify the server's port. Further information: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=711327 [root@client:~]# lpstat -H /var/run/cups/cups.sock [root@client:~]# lpstat -h server -H /var/run/cups/cups.sock:631 [root@client:~]# CUPS_SERVER=server lpstat -H server:631 [root@client:~]# lpstat -h server:631 -H server:631
* Merge 'master' into stagingVladimír Čunát2015-04-26
|\ | | | | | | (relatively simple conflicts)
| * nixos/tests/networking: Clean up and attempt to make more reliableWilliam A. Kennington III2015-04-10
| |
* | GNOME 3.16.1, closes #7357Luca Bruno2015-04-25
|/
* tests/misc.nix: Ensure that the Nix DB is initialised correctlyEelco Dolstra2015-04-07
|
* nixos/tests/vbox: Make GUI startup more robust.aszlig2015-04-04
| | | | | | | | | | | Sometimes, keys aren't properly recognized the first time, so in order to make sure they get through, always resend the key again on retry. In this case the worst that could happen is that the VM is started over and over again, but never in parallel, so that's fine because we're checking for successful startup 10 seconds after the keypress. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* Add nfs4 testEelco Dolstra2015-04-02
|
* tests/chromium: Work around popup close flakiness.aszlig2015-04-02
| | | | | | | | | | It's not nice to send the escape key over and over again just to ensure the popup is closed, because even *if* it fails to close the popup 4 times in a row it's just very unlikely that it will be closed. But in order to make really sure, we might need to do a screenshot and detect visual changes. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* nixos/tests/swraid: Increase boot partition size.aszlig2015-04-01
| | | | | | | | | | I'm increasing it to 100MB to make sure, any bootloader will fit with all its stages. Of course, right now the reason why GRUB doesn't fit into the partition is because of mdadm 3.3.2 and thus the initrd taking all the space, but in order to avoid confusion on why the *boot* loader fails in the VM tests, I've increased the size. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* Merge #4678: nixos iso-image: support USB bootingVladimír Čunát2015-03-31
|\ | | | | | | | | by using syslinux (i.e. support the dd-method in addition to unetbootin). @vcunat tidied the PR by squashing closely related changes together.
| * nixos: test: add tests for booting installation iso in various waysBob van der Linden2015-03-24
| |
* | nixos/initrd: Generic library copyingWilliam A. Kennington III2015-03-28
| |
* | Merge pull request #6919 from ehmry/cjdnsWilliam A. Kennington III2015-03-25
|\ \ | | | | | | cjdns: update pkg and fix nixos test
| * | nixos/tests/cjdns: do not build cjdns at evaluationEmery Hemingway2015-03-21
| |/ | | | | | | | | Putting hostnames in the cjdns configuration requires a utility be present to convert public keys to ip addresses
* / nixos/tests/printing: Fix CUPS service name (#6767)Jascha Geerds2015-03-25
|/
* kubernetes: update to 0.12.1, fix moduleJaka Hudoklin2015-03-18
|
* nixos: Add VM test for i3 window manager.aszlig2015-03-05
| | | | | | | | | | | | | Currently just makes sure that by default it's possible to open a terminal. And exactly this should be the main point that might confuse users of i3 in NixOS, because i3 doesn't print a warning/error if it is unable to start the terminal emulator. Thanks to @waaaaargh for reporting this issue. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* nixos/tests/chromium: Check new userns sandbox.aszlig2015-02-22
| | | | | | | | | | | | Since Chromium version 42, we have a new user namespaces sandbox in the upstream project. It's more integrated so the chrome://sandbox page reports it as "Namespace Sandbox" instead of SUID sandbox, which we were re-using (or abusing?) in our patch. So if either "SUID Sandbox" or "Namespace Sandbox" reports with "Yes", it's fine on our side. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* nixos/tests/installer: Add all bootloaders to the storeWilliam A. Kennington III2015-02-13
|
* nixos/tests: Fix installer test by providing a missing dependencyWilliam A. Kennington III2015-02-12
|
* nixos/tests/jenkins: increase timeout to 6 minutesBjørn Forsman2015-02-10
| | | | Fixes the test failure, at least on my system.
* panamax: simplify, refactor, add testJaka Hudoklin2015-02-07
|
* nixos/tests: fix printing after 0caae022fdVladimír Čunát2015-02-05
|
* nixos/tests/chromium: Increase VM memory size.aszlig2015-01-26
| | | | | | | | Chromium is quite memory hungry and we frequently get random crashes in the tests, so let's set it to 1024 MB because new releases of Chromium most probably won't consume *less* memory. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* ParanoiaEelco Dolstra2015-01-15
|
* nixos: add cadvisor serviceJaka Hudoklin2014-12-28
|
* nixos/mesos: Parameterize mesos slave attributesBenjamin Staffin2014-12-18
| | | | | | | | Added attributes to nixos/tests/mesos.nix to verify that mesos-slave attributes work. If the generated attributes are invalid, the daemon should fail to start. Change-Id: I5511245add30aba658b1af22cd7355b0bbf5d15c