1
0
Fork 1
mirror of https://github.com/coddingtonbear/django-mailbox.git synced 2026-07-10 06:48:19 +02:00

adds formatting updates and testing updates

This commit is contained in:
Joe 2021-02-07 22:49:48 -05:00
parent 83ee3bc4be
commit ea17f6df0b
7 changed files with 35 additions and 19 deletions

View file

@ -6,13 +6,19 @@ from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('django_mailbox', '0008_auto_20190219_1553'),
("django_mailbox", "0008_auto_20190219_1553"),
]
operations = [
migrations.AlterField(
model_name='message',
name='message_id',
field=models.CharField(blank=None, max_length=255, null=None, unique=True, verbose_name='Message ID'),
model_name="message",
name="message_id",
field=models.CharField(
blank=None,
max_length=255,
null=None,
unique=True,
verbose_name="Message ID",
),
),
]

View file

@ -352,7 +352,10 @@ class Mailbox(models.Model):
return new
def _process_message(self, message):
msg = Message(message_id=message["message-id"][0:255].strip())
try:
msg = Message(message_id=message["message-id"][0:255].strip())
except Exception:
msg = Message()
msg._email_object = message
settings = utils.get_settings()
@ -361,8 +364,8 @@ class Mailbox(models.Model):
msg.mailbox = self
if "subject" in message:
msg.subject = utils.convert_header_to_unicode(message["subject"])[0:255]
# ~ if "message-id" in message:
# ~ msg.message_id = message["message-id"][0:255].strip()
if "message-id" in message:
msg.message_id = message["message-id"][0:255].strip()
if "from" in message:
msg.from_header = utils.convert_header_to_unicode(message["from"])
if "to" in message:
@ -472,7 +475,9 @@ class Message(models.Model):
subject = models.CharField(_("Subject"), max_length=255)
message_id = models.CharField(_("Message ID"), max_length=255,blank=None,null=None,unique=True)
message_id = models.CharField(
_("Message ID"), max_length=255, blank=None, null=None, unique=True
)
in_reply_to = models.ForeignKey(
"django_mailbox.Message",

View file

@ -1,3 +1,3 @@
from django.dispatch.dispatcher import Signal
message_received = Signal(providing_args=["message"])
message_received = Signal()

View file

@ -10,7 +10,7 @@ from django_mailbox.models import Mailbox, Message
from django_mailbox.utils import convert_header_to_unicode
from django_mailbox import utils
from django_mailbox.tests.base import EmailMessageTestCase
from django.utils.encoding import force_text
from django.utils.encoding import force_str
from django.core.mail import EmailMessage
__all__ = ["TestProcessEmail"]
@ -347,11 +347,11 @@ class TestProcessEmail(EmailMessageTestCase):
email_object = self._get_email_object(
"message_with_long_content.eml",
)
size = len(force_text(email_object.as_string()))
size = len(force_str(email_object.as_string()))
msg = self.mailbox.process_incoming_message(email_object)
self.assertEqual(size, len(force_text(msg.get_email_object().as_string())))
self.assertEqual(size, len(force_str(msg.get_email_object().as_string())))
def test_message_saved(self):
message = self._get_email_object("generic_message.eml")
@ -365,7 +365,7 @@ class TestProcessEmail(EmailMessageTestCase):
msg = self.mailbox.process_incoming_message(message)
self.assertNotEquals(msg.eml, None)
self.assertNotEqual(msg.eml, None)
self.assertTrue(msg.eml.name.endswith(".eml"))
@ -384,7 +384,7 @@ class TestProcessEmail(EmailMessageTestCase):
msg = self.mailbox.process_incoming_message(message)
self.assertEquals(msg.eml, None)
self.assertEqual(msg.eml, None)
def test_message_compressed(self):
message = self._get_email_object("generic_message.eml")

View file

@ -1,7 +1,5 @@
import imaplib
import logging
from os.path import exists
import json
from django.conf import settings
from .base import EmailTransport, MessageParseError
@ -108,7 +106,6 @@ class ImapTransport(EmailTransport):
# If the archive folder does not exist, create it
self.server.create(self.archive)
for uid in message_ids:
try:
typ, msg_contents = self.server.uid("fetch", uid, "(RFC822)")