1import ./make-test-python.nix {
2 name = "nginx-more-headers";
3
4 nodes = {
5 webserver = { pkgs, ... }: {
6 services.nginx = {
7 enable = true;
8
9 virtualHosts.test = {
10 locations = {
11 "/".return = "200 blub";
12 "/some" = {
13 return = "200 blub";
14 extraConfig = ''
15 more_set_headers "Referrer-Policy: no-referrer";
16 '';
17 };
18 };
19 extraConfig = ''
20 more_set_headers "X-Powered-By: nixos";
21 '';
22 };
23 };
24 };
25 };
26
27 testScript = ''
28 webserver.wait_for_unit("nginx")
29 webserver.wait_for_open_port(80)
30
31 webserver.succeed("curl --fail --resolve test:80:127.0.0.1 --head --verbose http://test | grep -q \"X-Powered-By: nixos\"")
32 webserver.fail("curl --fail --resolve test:80:127.0.0.1 --head --verbose http://test | grep -q \"Referrer-Policy: no-referrer\"")
33
34 webserver.succeed("curl --fail --resolve test:80:127.0.0.1 --head --verbose http://test/some | grep -q \"X-Powered-By: nixos\"")
35 webserver.succeed("curl --fail --resolve test:80:127.0.0.1 --head --verbose http://test/some | grep -q \"Referrer-Policy: no-referrer\"")
36 '';
37}