slipshow: init nixos test (#434423)

Changed files
+41 -1
nixos
pkgs
by-name
sl
slipshow
+1
nixos/tests/all-tests.nix
···
simple = runTest ./simple.nix;
sing-box = runTest ./sing-box.nix;
slimserver = runTest ./slimserver.nix;
+
slipshow = runTest ./slipshow.nix;
slurm = runTest ./slurm.nix;
snmpd = runTest ./snmpd.nix;
smokeping = runTest ./smokeping.nix;
+35
nixos/tests/slipshow.nix
···
+
{
+
lib,
+
pkgs,
+
...
+
}:
+
{
+
name = "slipshow presentation test";
+
+
meta.maintainers = with lib.maintainers; [ ethancedwards8 ];
+
+
nodes.machine = {
+
environment.systemPackages = with pkgs; [ slipshow ];
+
+
environment.etc."slipshow".source = pkgs.fetchFromGitHub {
+
owner = "meithecatte";
+
repo = "bbslides";
+
rev = "ce1c08cafa71ae36dda8cc581956548b8386ae16";
+
hash = "sha256-sOydmvtDeMhNejDkwlsXdrbwtqN6lcNnzTnGzBVRFxA=";
+
};
+
};
+
+
testScript =
+
{ nodes, ... }:
+
''
+
start_all()
+
+
# it may take around a minute to compile the file and serve it
+
machine.succeed("slipshow serve /etc/slipshow/bbslides.md &>/dev/null &")
+
+
# slipshow serves defaultly on :8080 and unfortunately cannot
+
# be changed currently
+
machine.wait_for_open_port(8080)
+
machine.succeed("curl -i 0.0.0.0:8080")
+
'';
+
}
+5 -1
pkgs/by-name/sl/slipshow/package.nix
···
ocamlPackages,
fetchFromGitHub,
versionCheckHook,
+
nixosTests,
nix-update-script,
}:
···
versionCheckProgramArg = "--version";
doInstallCheck = true;
-
passthru.updateScript = nix-update-script { };
+
passthru = {
+
tests = { inherit (nixosTests) slipshow; };
+
updateScript = nix-update-script { };
+
};
meta = {
description = "Engine for displaying slips, the next-gen version of slides";