nixos/tests: add keepassxc
Test whether KeePassXC launches correctly.
This commit is contained in:
parent
3ed5570514
commit
6ee5348b55
3 changed files with 39 additions and 0 deletions
|
@ -185,6 +185,7 @@ in
|
||||||
k3s = handleTest ./k3s.nix {};
|
k3s = handleTest ./k3s.nix {};
|
||||||
kafka = handleTest ./kafka.nix {};
|
kafka = handleTest ./kafka.nix {};
|
||||||
keepalived = handleTest ./keepalived.nix {};
|
keepalived = handleTest ./keepalived.nix {};
|
||||||
|
keepassxc = handleTest ./keepassxc.nix {};
|
||||||
kerberos = handleTest ./kerberos/default.nix {};
|
kerberos = handleTest ./kerberos/default.nix {};
|
||||||
kernel-latest = handleTest ./kernel-latest.nix {};
|
kernel-latest = handleTest ./kernel-latest.nix {};
|
||||||
kernel-lts = handleTest ./kernel-lts.nix {};
|
kernel-lts = handleTest ./kernel-lts.nix {};
|
||||||
|
|
34
nixos/tests/keepassxc.nix
Normal file
34
nixos/tests/keepassxc.nix
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
import ./make-test-python.nix ({ pkgs, ...} :
|
||||||
|
|
||||||
|
{
|
||||||
|
name = "keepassxc";
|
||||||
|
meta = with pkgs.lib.maintainers; {
|
||||||
|
maintainers = [ turion ];
|
||||||
|
};
|
||||||
|
|
||||||
|
machine = { ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
./common/user-account.nix
|
||||||
|
./common/x11.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
services.xserver.enable = true;
|
||||||
|
test-support.displayManager.auto.user = "alice";
|
||||||
|
environment.systemPackages = [ pkgs.keepassxc ];
|
||||||
|
};
|
||||||
|
|
||||||
|
enableOCR = true;
|
||||||
|
|
||||||
|
testScript = { nodes, ... }: ''
|
||||||
|
start_all()
|
||||||
|
machine.wait_for_x()
|
||||||
|
|
||||||
|
# start KeePassXC window
|
||||||
|
machine.execute("su - alice -c keepassxc &")
|
||||||
|
|
||||||
|
machine.wait_for_text("KeePassXC ${pkgs.keepassxc.version}")
|
||||||
|
machine.screenshot("KeePassXC")
|
||||||
|
'';
|
||||||
|
})
|
|
@ -34,6 +34,8 @@
|
||||||
, withKeePassNetworking ? true
|
, withKeePassNetworking ? true
|
||||||
, withKeePassTouchID ? true
|
, withKeePassTouchID ? true
|
||||||
, withKeePassFDOSecrets ? true
|
, withKeePassFDOSecrets ? true
|
||||||
|
|
||||||
|
, nixosTests
|
||||||
}:
|
}:
|
||||||
|
|
||||||
with lib;
|
with lib;
|
||||||
|
@ -118,6 +120,8 @@ stdenv.mkDerivation rec {
|
||||||
wrapQtApp $out/Applications/KeePassXC.app/Contents/MacOS/KeePassXC
|
wrapQtApp $out/Applications/KeePassXC.app/Contents/MacOS/KeePassXC
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
passthru.tests = nixosTests.keepassxc;
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "Password manager to store your passwords safely and auto-type them into your everyday websites and applications";
|
description = "Password manager to store your passwords safely and auto-type them into your everyday websites and applications";
|
||||||
longDescription = "A community fork of KeePassX, which is itself a port of KeePass Password Safe. The goal is to extend and improve KeePassX with new features and bugfixes to provide a feature-rich, fully cross-platform and modern open-source password manager. Accessible via native cross-platform GUI, CLI, and browser integration with the KeePassXC Browser Extension (https://github.com/keepassxreboot/keepassxc-browser).";
|
longDescription = "A community fork of KeePassX, which is itself a port of KeePass Password Safe. The goal is to extend and improve KeePassX with new features and bugfixes to provide a feature-rich, fully cross-platform and modern open-source password manager. Accessible via native cross-platform GUI, CLI, and browser integration with the KeePassXC Browser Extension (https://github.com/keepassxreboot/keepassxc-browser).";
|
||||||
|
|
Loading…
Reference in a new issue