Skip to content

Commit 267e6ee

Browse files
committed
Improve code a little bit
1 parent 44267f9 commit 267e6ee

File tree

2 files changed

+17
-37
lines changed

2 files changed

+17
-37
lines changed

tempmail/client.py

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -158,15 +158,13 @@ def get_message(self, message_id: str) -> EmailMessage:
158158
data = self._make_request("GET", f"/v1/messages/{message_id}")
159159
return EmailMessage.from_json(data)
160160

161-
def delete_message(self, message_id: str) -> bool:
161+
def delete_message(self, message_id: str) -> None:
162162
"""Delete a specific message by ID."""
163163
self._make_request("DELETE", f"/v1/messages/{message_id}")
164-
return True
165164

166-
def delete_email(self, email: str) -> bool:
165+
def delete_email(self, email: str) -> None:
167166
"""Delete an email address and all its messages."""
168167
self._make_request("DELETE", f"/v1/emails/{email}")
169-
return True
170168

171169
def get_message_source_code(self, message_id: str) -> str:
172170
"""Get the raw source code of a message."""

tests/test_client.py

Lines changed: 15 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
"""Tests for the TempMailClient."""
2-
31
import datetime
42
import typing
53
import pytest
@@ -145,7 +143,6 @@ def test_list_email_messages_success(self, mock_request):
145143

146144
@patch("tempmail.client.requests.Session.request")
147145
def test_list_email_messages_empty(self, mock_request):
148-
"""Test message listing with empty response."""
149146
mock_response = Mock()
150147
mock_response.status_code = 200
151148
mock_response.json.return_value = {"messages": []}
@@ -156,7 +153,6 @@ def test_list_email_messages_empty(self, mock_request):
156153
messages = client.list_email_messages("[email protected]")
157154

158155
assert len(messages) == 0
159-
# Verify the request was made to correct endpoint
160156
mock_request.assert_called_once_with(
161157
method="GET",
162158
url="https://api.temp-mail.io/v1/emails/[email protected]/messages",
@@ -167,7 +163,6 @@ def test_list_email_messages_empty(self, mock_request):
167163

168164
@patch("tempmail.client.requests.Session.request")
169165
def test_get_message_success(self, mock_request):
170-
"""Test successful single message retrieval."""
171166
mock_response = Mock()
172167
mock_response.status_code = 200
173168
mock_response.json.return_value = {
@@ -187,13 +182,19 @@ def test_get_message_success(self, mock_request):
187182
client = TempMailClient("test-api-key")
188183
message = client.get_message("msg1")
189184

190-
assert isinstance(message, EmailMessage)
191-
assert message.id == "msg1"
192-
assert message.from_addr == "[email protected]"
193-
assert message.to_addr == "[email protected]"
194-
assert message.subject == "Test Subject"
195-
196-
# Verify correct endpoint was called
185+
assert message == EmailMessage(
186+
id="msg1",
187+
from_addr="[email protected]",
188+
to_addr="[email protected]",
189+
cc=[],
190+
subject="Test Subject",
191+
body_text="Test body",
192+
body_html="<p>Test body</p>",
193+
created_at=datetime.datetime(
194+
2023, 1, 1, 0, 0, tzinfo=datetime.timezone.utc
195+
),
196+
attachments=[],
197+
)
197198
mock_request.assert_called_once_with(
198199
method="GET",
199200
url="https://api.temp-mail.io/v1/messages/msg1",
@@ -204,19 +205,15 @@ def test_get_message_success(self, mock_request):
204205

205206
@patch("tempmail.client.requests.Session.request")
206207
def test_delete_message_success(self, mock_request):
207-
"""Test successful message deletion."""
208208
mock_response = Mock()
209209
mock_response.status_code = 200
210210
mock_response.json.return_value = {}
211211
mock_response.headers = self._rate_limit_headers
212212
mock_request.return_value = mock_response
213213

214214
client = TempMailClient("test-api-key")
215-
result = client.delete_message("msg123")
216-
217-
assert result is True
215+
client.delete_message("msg123")
218216

219-
# Verify correct endpoint was called
220217
mock_request.assert_called_once_with(
221218
method="DELETE",
222219
url="https://api.temp-mail.io/v1/messages/msg123",
@@ -227,19 +224,15 @@ def test_delete_message_success(self, mock_request):
227224

228225
@patch("tempmail.client.requests.Session.request")
229226
def test_delete_email_success(self, mock_request):
230-
"""Test successful email deletion."""
231227
mock_response = Mock()
232228
mock_response.status_code = 200
233229
mock_response.json.return_value = {}
234230
mock_response.headers = self._rate_limit_headers
235231
mock_request.return_value = mock_response
236232

237233
client = TempMailClient("test-api-key")
238-
result = client.delete_email("[email protected]")
234+
client.delete_email("[email protected]")
239235

240-
assert result is True
241-
242-
# Verify correct endpoint was called
243236
mock_request.assert_called_once_with(
244237
method="DELETE",
245238
url="https://api.temp-mail.io/v1/emails/[email protected]",
@@ -250,7 +243,6 @@ def test_delete_email_success(self, mock_request):
250243

251244
@patch("tempmail.client.requests.Session.request")
252245
def test_get_message_source_code_success(self, mock_request):
253-
"""Test successful message source code retrieval."""
254246
mock_response = Mock()
255247
mock_response.status_code = 200
256248
mock_response.json.return_value = {
@@ -265,7 +257,6 @@ def test_get_message_source_code_success(self, mock_request):
265257
assert "Received: from example.com" in source_code
266258
assert "Subject: Test Subject" in source_code
267259

268-
# Verify correct endpoint was called
269260
mock_request.assert_called_once_with(
270261
method="GET",
271262
url="https://api.temp-mail.io/v1/messages/msg1/source_code",
@@ -276,7 +267,6 @@ def test_get_message_source_code_success(self, mock_request):
276267

277268
@patch("tempmail.client.requests.Session.request")
278269
def test_download_attachment_success(self, mock_request):
279-
"""Test successful attachment download."""
280270
mock_response = Mock()
281271
mock_response.status_code = 200
282272
mock_response.content = b"attachment content here"
@@ -288,7 +278,6 @@ def test_download_attachment_success(self, mock_request):
288278

289279
assert content == b"attachment content here"
290280

291-
# Verify correct endpoint was called
292281
mock_request.assert_called_once_with(
293282
method="GET",
294283
url="https://api.temp-mail.io/v1/attachments/attachment1",
@@ -299,7 +288,6 @@ def test_download_attachment_success(self, mock_request):
299288

300289
@patch("tempmail.client.requests.Session.request")
301290
def test_authentication_error(self, mock_request):
302-
"""Test authentication error handling."""
303291
mock_response = Mock()
304292
mock_response.status_code = 400
305293
mock_response.json.return_value = {
@@ -319,7 +307,6 @@ def test_authentication_error(self, mock_request):
319307

320308
@patch("tempmail.client.requests.Session.request")
321309
def test_rate_limit_error(self, mock_request):
322-
"""Test rate limit error handling."""
323310
mock_response = Mock()
324311
mock_response.status_code = 429
325312
mock_response.json.return_value = {
@@ -342,7 +329,6 @@ def test_rate_limit_error(self, mock_request):
342329

343330
@patch("tempmail.client.requests.Session.request")
344331
def test_validation_error(self, mock_request):
345-
"""Test validation error handling."""
346332
mock_response = Mock()
347333
mock_response.status_code = 400
348334
mock_response.json.return_value = {
@@ -362,7 +348,6 @@ def test_validation_error(self, mock_request):
362348

363349
@patch("tempmail.client.requests.Session.request")
364350
def test_api_error(self, mock_request):
365-
"""Test generic API error handling."""
366351
mock_response = Mock()
367352
mock_response.status_code = 500
368353
mock_response.json.return_value = {
@@ -382,7 +367,6 @@ def test_api_error(self, mock_request):
382367

383368
@patch("tempmail.client.requests.Session.request")
384369
def test_get_rate_limit_success(self, mock_request):
385-
"""Test successful rate limit retrieval."""
386370
mock_response = Mock()
387371
mock_response.status_code = 200
388372
mock_response.json.return_value = {
@@ -414,8 +398,6 @@ def test_get_rate_limit_success(self, mock_request):
414398

415399
@patch("tempmail.client.requests.Session.request")
416400
def test_request_exception(self, mock_request):
417-
"""Test handling of request exceptions."""
418-
419401
mock_request.side_effect = ConnectionError("Connection failed")
420402

421403
client = TempMailClient("test-api-key")

0 commit comments

Comments
 (0)