mirror of
https://github.com/thib8956/nginx-proxy
synced 2025-02-23 17:28:14 +00:00
test: Add test case for location config priority
This commit is contained in:
parent
4099fcd618
commit
6a580ad664
1
test/test_virtual-path/default.conf
Normal file
1
test/test_virtual-path/default.conf
Normal file
@ -0,0 +1 @@
|
||||
add_header X-test-default true;
|
1
test/test_virtual-path/host.conf
Normal file
1
test/test_virtual-path/host.conf
Normal file
@ -0,0 +1 @@
|
||||
add_header X-test-host true;
|
1
test/test_virtual-path/path.conf
Normal file
1
test/test_virtual-path/path.conf
Normal file
@ -0,0 +1 @@
|
||||
add_header X-test-path true;
|
32
test/test_virtual-path/test_location_precedence.py
Normal file
32
test/test_virtual-path/test_location_precedence.py
Normal file
@ -0,0 +1,32 @@
|
||||
import pytest
|
||||
|
||||
def test_location_precedence_case1(docker_compose, nginxproxy):
|
||||
r = nginxproxy.get(f"http://foo.nginx-proxy.test/web1/port")
|
||||
assert r.status_code == 200
|
||||
|
||||
assert "X-test-default" in r.headers
|
||||
assert "X-test-host" not in r.headers
|
||||
assert "X-test-path" not in r.headers
|
||||
|
||||
assert r.headers["X-test-default"] == "true"
|
||||
|
||||
def test_location_precedence_case2(docker_compose, nginxproxy):
|
||||
r = nginxproxy.get(f"http://bar.nginx-proxy.test/web2/port")
|
||||
assert r.status_code == 200
|
||||
|
||||
assert "X-test-default" not in r.headers
|
||||
assert "X-test-host" in r.headers
|
||||
assert "X-test-path" not in r.headers
|
||||
|
||||
assert r.headers["X-test-host"] == "true"
|
||||
|
||||
def test_location_precedence_case3(docker_compose, nginxproxy):
|
||||
r = nginxproxy.get(f"http://bar.nginx-proxy.test/web3/port")
|
||||
assert r.status_code == 200
|
||||
|
||||
assert "X-test-default" not in r.headers
|
||||
assert "X-test-host" not in r.headers
|
||||
assert "X-test-path" in r.headers
|
||||
|
||||
assert r.headers["X-test-path"] == "true"
|
||||
|
38
test/test_virtual-path/test_location_precedence.yml
Normal file
38
test/test_virtual-path/test_location_precedence.yml
Normal file
@ -0,0 +1,38 @@
|
||||
web1:
|
||||
image: web
|
||||
expose:
|
||||
- "81"
|
||||
environment:
|
||||
WEB_PORTS: "81"
|
||||
VIRTUAL_HOST: "foo.nginx-proxy.test"
|
||||
VIRTUAL_PATH: "/web1/"
|
||||
VIRTUAL_DEST: "/"
|
||||
|
||||
web2:
|
||||
image: web
|
||||
expose:
|
||||
- "82"
|
||||
environment:
|
||||
WEB_PORTS: "82"
|
||||
VIRTUAL_HOST: "bar.nginx-proxy.test"
|
||||
VIRTUAL_PATH: "/web2/"
|
||||
VIRTUAL_DEST: "/"
|
||||
|
||||
web3:
|
||||
image: web
|
||||
expose:
|
||||
- "83"
|
||||
environment:
|
||||
WEB_PORTS: "83"
|
||||
VIRTUAL_HOST: "bar.nginx-proxy.test"
|
||||
VIRTUAL_PATH: "/web3/"
|
||||
VIRTUAL_DEST: "/"
|
||||
|
||||
sut:
|
||||
image: nginxproxy/nginx-proxy:test
|
||||
volumes:
|
||||
- /var/run/docker.sock:/tmp/docker.sock:ro
|
||||
- ../lib/ssl/dhparam.pem:/etc/nginx/dhparam/dhparam.pem:ro
|
||||
- ./default.conf:/etc/nginx/vhost.d/default_location:ro
|
||||
- ./host.conf:/etc/nginx/vhost.d/bar.nginx-proxy.test_location:ro
|
||||
- ./path.conf:/etc/nginx/vhost.d/bar.nginx-proxy.test_99f2db0ed8aa95dbb5b87fca79c7eff2ff6bb8bd_location:ro
|
Loading…
x
Reference in New Issue
Block a user