1import ./make-test-python.nix ({ pkgs, ... }:
2{
3 name = "nix-serve";
4 nodes.machine = { pkgs, ... }: {
5 services.nix-serve.enable = true;
6 environment.systemPackages = [
7 pkgs.hello
8 ];
9 };
10 testScript = let
11 pkgHash = builtins.head (
12 builtins.match "${builtins.storeDir}/([^-]+).+" (toString pkgs.hello)
13 );
14 in ''
15 start_all()
16 machine.wait_for_unit("nix-serve.service")
17 machine.wait_for_open_port(5000)
18 machine.succeed(
19 "curl --fail -g http://0.0.0.0:5000/nar/${pkgHash}.nar -o /tmp/hello.nar"
20 )
21 '';
22})