import ./make-test-python.nix {
  name = "nginx-more-headers";

  nodes = {
    webserver =
      { pkgs, ... }:
      {
        services.nginx = {
          enable = true;

          virtualHosts.test = {
            locations = {
              "/".return = "200 blub";
              "/some" = {
                return = "200 blub";
                extraConfig = ''
                  more_set_headers "Referrer-Policy: no-referrer";
                '';
              };
            };
            extraConfig = ''
              more_set_headers "X-Powered-By: nixos";
            '';
          };
        };
      };
  };

  testScript = ''
    webserver.wait_for_unit("nginx")
    webserver.wait_for_open_port(80)

    webserver.succeed("curl --fail --resolve test:80:127.0.0.1 --head --verbose http://test | grep -q \"X-Powered-By: nixos\"")
    webserver.fail("curl --fail --resolve test:80:127.0.0.1 --head --verbose http://test | grep -q \"Referrer-Policy: no-referrer\"")

    webserver.succeed("curl --fail --resolve test:80:127.0.0.1 --head --verbose http://test/some | grep -q \"X-Powered-By: nixos\"")
    webserver.succeed("curl --fail --resolve test:80:127.0.0.1 --head --verbose http://test/some | grep -q \"Referrer-Policy: no-referrer\"")
  '';
}