Skip to content

Commit

Permalink
Fix #54 -- Reset existing payloads only (#55)
Browse files Browse the repository at this point in the history
  • Loading branch information
amureki committed Aug 22, 2023
1 parent b74e368 commit b45538e
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 3 deletions.
3 changes: 2 additions & 1 deletion emark/backends.py
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,8 @@ class ConsoleEmailBackendMixin:
def write_message(self, message):
msg = message.message()
payload_count = len(msg.get_payload())
msg.set_payload(msg.get_payload(0))
if payload_count > 1:
msg.set_payload(msg.get_payload(0))
msg_data = msg.as_bytes()
charset = (
msg.get_charset().get_output_charset() if msg.get_charset() else "utf-8"
Expand Down
15 changes: 13 additions & 2 deletions tests/test_backends.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
from unittest.mock import MagicMock, Mock

import pytest
from django.core.mail import EmailMultiAlternatives
from django.core.mail import EmailMessage, EmailMultiAlternatives

from emark import backends
from emark.models import Send
Expand Down Expand Up @@ -60,6 +60,17 @@ def test_send__with_user(self, admin_user, email_message):
obj = Send.objects.get()
assert obj.user == admin_user

@pytest.mark.django_db
def test_send__native_email(self):
with io.StringIO() as stream:
backend = backends.TrackingConsoleEmailBackend(stream=stream)
EmailMessage(
to=["peter.parker@avengers.com"],
connection=backend,
).send()

assert Send.objects.count() == 1

@pytest.mark.django_db
def test_write_message__native_email(self):
msg = EmailMultiAlternatives(to=["ironman@avengers.com"], body="foo")
Expand All @@ -72,7 +83,7 @@ def test_write_message__native_email(self):
assert Send.objects.count() == 1

@pytest.mark.django_db
def test_write_message__native_email__multiple_receipients(self):
def test_write_message__native_email__multiple_recipients(self):
msg = EmailMultiAlternatives(
to=["spiderman@avengers.com"], cc=["peter.parker@aol.com"], body="foo"
)
Expand Down

0 comments on commit b45538e

Please sign in to comment.