Skip to content

Commit d790d41

Browse files
committed
test: add tests for additional headers
1 parent 3311032 commit d790d41

File tree

2 files changed

+43
-1
lines changed

2 files changed

+43
-1
lines changed

tests/api_call_test.py

Lines changed: 41 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
import sys
77
import time
88

9+
from isort import Config
910
from pytest_mock import MockFixture
1011

1112
if sys.version_info >= (3, 11):
@@ -135,6 +136,43 @@ def test_normalize_params_with_no_booleans() -> None:
135136
assert parameter_dict == {"key1": "value", "key2": 123}
136137

137138

139+
def test_additional_headers(fake_api_call: ApiCall) -> None:
140+
"""Test the `make_request` method with additional headers from the config."""
141+
session = requests.sessions.Session()
142+
api_call = ApiCall(
143+
Configuration(
144+
{
145+
"additional_headers": {
146+
"AdditionalHeader1": "test",
147+
"AdditionalHeader2": "test2",
148+
},
149+
"api_key": "test-api",
150+
"nodes": [
151+
"http://nearest:8108",
152+
],
153+
},
154+
),
155+
)
156+
157+
with requests_mock.mock(session=session) as request_mocker:
158+
request_mocker.get(
159+
"http://nearest:8108/test",
160+
json={"key": "value"},
161+
status_code=200,
162+
)
163+
164+
api_call._execute_request(
165+
session.get,
166+
"/test",
167+
as_json=True,
168+
entity_type=typing.Dict[str, str],
169+
)
170+
171+
request = request_mocker.request_history[-1]
172+
assert request.headers["AdditionalHeader1"] == "test"
173+
assert request.headers["AdditionalHeader2"] == "test2"
174+
175+
138176
def test_make_request_as_json(fake_api_call: ApiCall) -> None:
139177
"""Test the `make_request` method with JSON response."""
140178
session = requests.sessions.Session()
@@ -172,6 +210,7 @@ def test_make_request_as_text(fake_api_call: ApiCall) -> None:
172210
as_json=False,
173211
entity_type=typing.Dict[str, str],
174212
)
213+
175214
assert response == "response text"
176215

177216

@@ -431,7 +470,8 @@ def test_get_node_no_healthy_nodes(
431470
assert "No healthy nodes were found. Returning the next node." in caplog.text
432471

433472
assert (
434-
selected_node == fake_api_call.node_manager.nodes[fake_api_call.node_manager.node_index]
473+
selected_node
474+
== fake_api_call.node_manager.nodes[fake_api_call.node_manager.node_index]
435475
)
436476

437477
assert fake_api_call.node_manager.node_index == 0

tests/configuration_test.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,7 @@ def test_configuration_explicit() -> None:
6666
"num_retries": 5,
6767
"retry_interval_seconds": 2.0,
6868
"verify": False,
69+
"additional_headers": {"X-Test": "test", "X-Test2": "test2"},
6970
}
7071

7172
configuration = Configuration(config)
@@ -82,6 +83,7 @@ def test_configuration_explicit() -> None:
8283
"num_retries": 5,
8384
"retry_interval_seconds": 2.0,
8485
"verify": False,
86+
"additional_headers": {"X-Test": "test", "X-Test2": "test2"},
8587
}
8688

8789
assert_to_contain_object(configuration, expected)

0 commit comments

Comments
 (0)