Skip to content
This repository was archived by the owner on Sep 2, 2022. It is now read-only.

Commit 5490410

Browse files
committed
Refactor Django test client middleware refreshing
1 parent e759f01 commit 5490410

1 file changed

Lines changed: 7 additions & 18 deletions

File tree

tests/django/test_django.py

Lines changed: 7 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -6,15 +6,10 @@
66
import apilytics
77
import tests.conftest
88

9-
client = django.test.client.Client()
10-
119

1210
def test_middleware_should_call_apilytics_api(
13-
mocked_urlopen: unittest.mock.MagicMock,
11+
mocked_urlopen: unittest.mock.MagicMock, client: django.test.client.Client
1412
) -> None:
15-
# Refresh middleware to call `__init__` again making sure `MiddlewareNotUsed`
16-
# is ether called or not called properly.
17-
client.handler.load_middleware()
1813
response = client.get("/")
1914
assert response.status_code == 200
2015

@@ -53,9 +48,8 @@ def test_middleware_should_call_apilytics_api(
5348

5449

5550
def test_middleware_should_send_query_params(
56-
mocked_urlopen: unittest.mock.MagicMock,
51+
mocked_urlopen: unittest.mock.MagicMock, client: django.test.client.Client
5752
) -> None:
58-
client.handler.load_middleware()
5953
response = client.post("/dummy/123/path/?param=foo&param2=bar")
6054
assert response.status_code == 201
6155

@@ -72,9 +66,8 @@ def test_middleware_should_send_query_params(
7266

7367

7468
def test_middleware_should_handle_zero_request_and_response_sizes(
75-
mocked_urlopen: unittest.mock.MagicMock,
69+
mocked_urlopen: unittest.mock.MagicMock, client: django.test.client.Client
7670
) -> None:
77-
client.handler.load_middleware()
7871
response = client.post("/empty?some=query", content_type="application/json")
7972
assert response.status_code == 200
8073

@@ -86,9 +79,8 @@ def test_middleware_should_handle_zero_request_and_response_sizes(
8679

8780

8881
def test_middleware_should_handle_non_zero_request_and_response_sizes(
89-
mocked_urlopen: unittest.mock.MagicMock,
82+
mocked_urlopen: unittest.mock.MagicMock, client: django.test.client.Client
9083
) -> None:
91-
client.handler.load_middleware()
9284
response = client.post(
9385
"/dummy?some=query", data={"hello": "world"}, content_type="application/json"
9486
)
@@ -102,9 +94,8 @@ def test_middleware_should_handle_non_zero_request_and_response_sizes(
10294

10395

10496
def test_middleware_should_work_with_streaming_response(
105-
mocked_urlopen: unittest.mock.MagicMock,
97+
mocked_urlopen: unittest.mock.MagicMock, client: django.test.client.Client
10698
) -> None:
107-
client.handler.load_middleware()
10899
response = client.get("/streaming")
109100
assert response.status_code == 200
110101
# Ignore: The attribute *does* exist on StreamingHTTPResponse.
@@ -130,19 +121,17 @@ def test_middleware_should_work_with_streaming_response(
130121

131122
@django.test.override_settings(APILYTICS_API_KEY=None)
132123
def test_middleware_should_be_disabled_if_api_key_is_unset(
133-
mocked_urlopen: unittest.mock.MagicMock,
124+
mocked_urlopen: unittest.mock.MagicMock, client: django.test.client.Client
134125
) -> None:
135-
client.handler.load_middleware()
136126
response = client.get("/")
137127
assert response.status_code == 200
138128

139129
assert mocked_urlopen.call_count == 0
140130

141131

142132
def test_middleware_should_send_data_even_on_errors(
143-
mocked_urlopen: unittest.mock.MagicMock,
133+
mocked_urlopen: unittest.mock.MagicMock, client: django.test.client.Client
144134
) -> None:
145-
client.handler.load_middleware()
146135
try:
147136
client.get("/error")
148137
except RuntimeError:

0 commit comments

Comments
 (0)