at 25.11-pre 1.6 kB view raw
1import ./make-test-python.nix ( 2 { pkgs, ... }: 3 { 4 name = "nzbget"; 5 meta = with pkgs.lib.maintainers; { 6 maintainers = [ 7 aanderse 8 flokli 9 ]; 10 }; 11 12 nodes = { 13 server = 14 { ... }: 15 { 16 services.nzbget.enable = true; 17 18 # provide some test settings 19 services.nzbget.settings = { 20 "MainDir" = "/var/lib/nzbget"; 21 "DirectRename" = true; 22 "DiskSpace" = 0; 23 "Server1.Name" = "this is a test"; 24 }; 25 26 # hack, don't add (unfree) unrar to nzbget's path, 27 # so we can run this test in CI 28 systemd.services.nzbget.path = pkgs.lib.mkForce [ pkgs.p7zip ]; 29 }; 30 }; 31 32 testScript = 33 { nodes, ... }: 34 '' 35 start_all() 36 37 server.wait_for_unit("nzbget.service") 38 server.wait_for_unit("network.target") 39 server.wait_for_open_port(6789) 40 assert "This file is part of nzbget" in server.succeed( 41 "curl -f -s -u nzbget:tegbzn6789 http://127.0.0.1:6789" 42 ) 43 server.succeed( 44 "${pkgs.nzbget}/bin/nzbget -n -o Control_iP=127.0.0.1 -o Control_port=6789 -o Control_password=tegbzn6789 -V" 45 ) 46 47 config = server.succeed("${nodes.server.systemd.services.nzbget.serviceConfig.ExecStart} --printconfig") 48 49 # confirm the test settings are applied 50 assert 'MainDir = "/var/lib/nzbget"' in config 51 assert 'DirectRename = "yes"' in config 52 assert 'DiskSpace = "0"' in config 53 assert 'Server1.Name = "this is a test"' in config 54 ''; 55 } 56)