1313 ValidationError ,
1414 TempMailError ,
1515)
16- from requests . exceptions import ConnectionError
16+ from httpx import ConnectError
1717from tempmail .models import DomainType , RateLimit , Attachment
1818
1919
@@ -28,7 +28,7 @@ class TestTempMailClient:
2828 def test_client_initialization (self ) -> None :
2929 client = TempMailClient ("test-api-key" )
3030 assert client .api_key == "test-api-key"
31- assert client .session .headers ["X-API-Key" ] == "test-api-key"
31+ assert client .client .headers ["X-API-Key" ] == "test-api-key"
3232
3333 def test_client_initialization_with_custom_params (self ) -> None :
3434 client = TempMailClient (
@@ -37,7 +37,7 @@ def test_client_initialization_with_custom_params(self) -> None:
3737 assert client .base_url == "https://custom.api.com"
3838 assert client .timeout == 60
3939
40- @patch ("tempmail.client.requests.Session .request" )
40+ @patch ("tempmail.client.httpx.Client .request" )
4141 def test_create_email_success (self , mock_request ) -> None :
4242 mock_response = Mock ()
4343 mock_response .status_code = 200
@@ -49,7 +49,7 @@ def test_create_email_success(self, mock_request) -> None:
4949 email : EmailAddress = client .create_email ()
5050 assert email == EmailAddress (
email = "[email protected] " ,
ttl = 86400 )
5151
52- @patch ("tempmail.client.requests.Session .request" )
52+ @patch ("tempmail.client.httpx.Client .request" )
5353 def test_create_email_premium_domain_type (self , mock_request ) -> None :
5454 mock_response = Mock ()
5555 mock_response .status_code = 200
@@ -66,10 +66,9 @@ def test_create_email_premium_domain_type(self, mock_request) -> None:
6666 url = "https://api.temp-mail.io/v1/emails" ,
6767 params = None ,
6868 json = {"domain_type" : "premium" },
69- timeout = 30 ,
7069 )
7170
72- @patch ("tempmail.client.requests.Session .request" )
71+ @patch ("tempmail.client.httpx.Client .request" )
7372 def test_create_email_with_options (self , mock_request ):
7473 mock_response = Mock ()
7574 mock_response .status_code = 200
@@ -87,10 +86,9 @@ def test_create_email_with_options(self, mock_request):
8786 url = "https://api.temp-mail.io/v1/emails" ,
8887 params = None ,
8988 json = {"domain" : "mydomain.com" },
90- timeout = 30 ,
9189 )
9290
93- @patch ("tempmail.client.requests.Session .request" )
91+ @patch ("tempmail.client.httpx.Client .request" )
9492 def test_list_domains_success (self , mock_request ) -> None :
9593 mock_response = Mock ()
9694 mock_response .status_code = 200
@@ -121,7 +119,7 @@ def test_list_domains_success(self, mock_request) -> None:
121119 Domain (name = "example.io" , type = DomainType .PREMIUM ),
122120 ]
123121
124- @patch ("tempmail.client.requests.Session .request" )
122+ @patch ("tempmail.client.httpx.Client .request" )
125123 def test_list_email_messages_success (self , mock_request ):
126124 mock_response = Mock ()
127125 mock_response .status_code = 200
@@ -175,7 +173,7 @@ def test_list_email_messages_success(self, mock_request):
175173 ],
176174 )
177175
178- @patch ("tempmail.client.requests.Session .request" )
176+ @patch ("tempmail.client.httpx.Client .request" )
179177 def test_list_email_messages_no_attachments (self , mock_request ):
180178 mock_response = Mock ()
181179 mock_response .status_code = 200
@@ -215,7 +213,7 @@ def test_list_email_messages_no_attachments(self, mock_request):
215213 attachments = [],
216214 )
217215
218- @patch ("tempmail.client.requests.Session .request" )
216+ @patch ("tempmail.client.httpx.Client .request" )
219217 def test_list_email_messages_empty (self , mock_request ):
220218 mock_response = Mock ()
221219 mock_response .status_code = 200
@@ -232,10 +230,9 @@ def test_list_email_messages_empty(self, mock_request):
232230 url = "https://api.temp-mail.io/v1/emails/[email protected] /messages" ,
233231 params = None ,
234232 json = None ,
235- timeout = 30 ,
236233 )
237234
238- @patch ("tempmail.client.requests.Session .request" )
235+ @patch ("tempmail.client.httpx.Client .request" )
239236 def test_get_message_success (self , mock_request ):
240237 mock_response = Mock ()
241238 mock_response .status_code = 200
@@ -274,10 +271,9 @@ def test_get_message_success(self, mock_request):
274271 url = "https://api.temp-mail.io/v1/messages/msg1" ,
275272 params = None ,
276273 json = None ,
277- timeout = 30 ,
278274 )
279275
280- @patch ("tempmail.client.requests.Session .request" )
276+ @patch ("tempmail.client.httpx.Client .request" )
281277 def test_delete_message_success (self , mock_request ):
282278 mock_response = Mock ()
283279 mock_response .status_code = 200
@@ -293,10 +289,9 @@ def test_delete_message_success(self, mock_request):
293289 url = "https://api.temp-mail.io/v1/messages/msg123" ,
294290 params = None ,
295291 json = None ,
296- timeout = 30 ,
297292 )
298293
299- @patch ("tempmail.client.requests.Session .request" )
294+ @patch ("tempmail.client.httpx.Client .request" )
300295 def test_delete_email_success (self , mock_request ):
301296 mock_response = Mock ()
302297 mock_response .status_code = 200
@@ -312,10 +307,9 @@ def test_delete_email_success(self, mock_request):
312307 url = "https://api.temp-mail.io/v1/emails/[email protected] " ,
313308 params = None ,
314309 json = None ,
315- timeout = 30 ,
316310 )
317311
318- @patch ("tempmail.client.requests.Session .request" )
312+ @patch ("tempmail.client.httpx.Client .request" )
319313 def test_get_message_source_code_success (self , mock_request ):
320314 mock_response = Mock ()
321315 mock_response .status_code = 200
@@ -336,10 +330,9 @@ def test_get_message_source_code_success(self, mock_request):
336330 url = "https://api.temp-mail.io/v1/messages/msg1/source_code" ,
337331 params = None ,
338332 json = None ,
339- timeout = 30 ,
340333 )
341334
342- @patch ("tempmail.client.requests.Session .request" )
335+ @patch ("tempmail.client.httpx.Client .request" )
343336 def test_download_attachment_success (self , mock_request ):
344337 mock_response = Mock ()
345338 mock_response .status_code = 200
@@ -357,10 +350,9 @@ def test_download_attachment_success(self, mock_request):
357350 url = "https://api.temp-mail.io/v1/attachments/attachment1" ,
358351 params = None ,
359352 json = None ,
360- timeout = 30 ,
361353 )
362354
363- @patch ("tempmail.client.requests.Session .request" )
355+ @patch ("tempmail.client.httpx.Client .request" )
364356 def test_authentication_error (self , mock_request ):
365357 mock_response = Mock ()
366358 mock_response .status_code = 400
@@ -379,7 +371,7 @@ def test_authentication_error(self, mock_request):
379371 with pytest .raises (AuthenticationError , match = "API token is invalid" ):
380372 client .create_email ()
381373
382- @patch ("tempmail.client.requests.Session .request" )
374+ @patch ("tempmail.client.httpx.Client .request" )
383375 def test_rate_limit_error (self , mock_request ):
384376 mock_response = Mock ()
385377 mock_response .status_code = 429
@@ -401,7 +393,7 @@ def test_rate_limit_error(self, mock_request):
401393 ):
402394 client .create_email ()
403395
404- @patch ("tempmail.client.requests.Session .request" )
396+ @patch ("tempmail.client.httpx.Client .request" )
405397 def test_validation_error (self , mock_request ):
406398 mock_response = Mock ()
407399 mock_response .status_code = 400
@@ -420,7 +412,7 @@ def test_validation_error(self, mock_request):
420412 with pytest .raises (ValidationError , match = "Invalid domain name" ):
421413 client .create_email (domain = "invalid_domain" )
422414
423- @patch ("tempmail.client.requests.Session .request" )
415+ @patch ("tempmail.client.httpx.Client .request" )
424416 def test_api_error (self , mock_request ):
425417 mock_response = Mock ()
426418 mock_response .status_code = 500
@@ -439,7 +431,7 @@ def test_api_error(self, mock_request):
439431 with pytest .raises (TempMailError , match = "Internal server error" ):
440432 client .create_email ()
441433
442- @patch ("tempmail.client.requests.Session .request" )
434+ @patch ("tempmail.client.httpx.Client .request" )
443435 def test_get_rate_limit_success (self , mock_request ):
444436 mock_response = Mock ()
445437 mock_response .status_code = 200
@@ -470,9 +462,9 @@ def test_get_rate_limit_success(self, mock_request):
470462 limit = 100 , remaining = 95 , used = 5 , reset = 1640995200
471463 )
472464
473- @patch ("tempmail.client.requests.Session .request" )
465+ @patch ("tempmail.client.httpx.Client .request" )
474466 def test_request_exception (self , mock_request ):
475- mock_request .side_effect = ConnectionError ("Connection failed" )
467+ mock_request .side_effect = ConnectError ("Connection failed" )
476468
477469 client = TempMailClient ("test-api-key" )
478470 with pytest .raises (TempMailError , match = "Request failed" ):
0 commit comments