2017-11-16 16:34:10 +00:00
|
|
|
import pytest
|
2018-04-25 14:12:58 +01:00
|
|
|
|
2017-11-16 16:34:10 +00:00
|
|
|
from tests.conftest import set_config_values
|
2017-11-14 15:26:03 +00:00
|
|
|
|
|
|
|
|
|
2023-08-25 09:12:23 -07:00
|
|
|
@pytest.mark.parametrize(
|
2023-09-29 17:40:28 -04:00
|
|
|
("check_proxy_header", "header_value", "expected_code"),
|
2023-08-25 09:12:23 -07:00
|
|
|
[
|
|
|
|
|
(True, "key_1", 200),
|
|
|
|
|
(True, "wrong_key", 403),
|
|
|
|
|
(False, "wrong_key", 200),
|
|
|
|
|
(False, "key_1", 200),
|
|
|
|
|
],
|
|
|
|
|
)
|
|
|
|
|
def test_route_correct_secret_key(
|
|
|
|
|
notify_admin, check_proxy_header, header_value, expected_code
|
|
|
|
|
):
|
|
|
|
|
with set_config_values(
|
|
|
|
|
notify_admin,
|
|
|
|
|
{
|
|
|
|
|
"ROUTE_SECRET_KEY_1": "key_1",
|
|
|
|
|
"ROUTE_SECRET_KEY_2": "",
|
|
|
|
|
"CHECK_PROXY_HEADER": check_proxy_header,
|
|
|
|
|
},
|
|
|
|
|
):
|
2021-05-12 14:57:21 +01:00
|
|
|
with notify_admin.test_client() as client:
|
2017-11-16 17:02:38 +00:00
|
|
|
response = client.get(
|
2023-08-25 09:12:23 -07:00
|
|
|
path="/_status?elb=True",
|
2017-11-16 17:02:38 +00:00
|
|
|
headers=[
|
2023-08-25 09:12:23 -07:00
|
|
|
("X-Custom-forwarder", header_value),
|
|
|
|
|
],
|
2017-11-16 17:02:38 +00:00
|
|
|
)
|
2017-11-16 16:34:10 +00:00
|
|
|
assert response.status_code == expected_code
|