mirror of
https://github.com/paperless-ngx/paperless-ngx.git
synced 2025-07-28 18:24:38 -05:00
Image imports and consumption by mail work
This commit is contained in:
@@ -1,3 +1,4 @@
|
||||
import base64
|
||||
import os
|
||||
import magic
|
||||
|
||||
@@ -6,10 +7,10 @@ from hashlib import md5
|
||||
from django.conf import settings
|
||||
from django.test import TestCase
|
||||
|
||||
from ...consumers.mail import MailConsumer
|
||||
from ...mail import Message, Attachment
|
||||
|
||||
|
||||
class TestMailConsumer(TestCase):
|
||||
class TestMessage(TestCase):
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
|
||||
@@ -23,21 +24,33 @@ class TestMailConsumer(TestCase):
|
||||
"mail.txt"
|
||||
)
|
||||
|
||||
def test_parse(self):
|
||||
consumer = MailConsumer()
|
||||
with open(self.sample) as f:
|
||||
def test_init(self):
|
||||
|
||||
messages = consumer._parse_message(f.read())
|
||||
with open(self.sample, "rb") as f:
|
||||
|
||||
self.assertTrue(len(messages), 1)
|
||||
self.assertEqual(messages[0]["subject"], "Test 0")
|
||||
message = Message(f.read())
|
||||
|
||||
attachment = messages[0]["attachment"]
|
||||
data = attachment.read()
|
||||
self.assertTrue(message)
|
||||
self.assertEqual(message.subject, "Test 0")
|
||||
|
||||
data = message.attachment.read()
|
||||
|
||||
self.assertEqual(
|
||||
md5(data).hexdigest(), "7c89655f9e9eb7dd8cde8568e8115d59")
|
||||
|
||||
self.assertEqual(attachment.content_type, "application/pdf")
|
||||
self.assertEqual(
|
||||
message.attachment.content_type, "application/pdf")
|
||||
with magic.Magic(flags=magic.MAGIC_MIME_TYPE) as m:
|
||||
self.assertEqual(m.id_buffer(data), "application/pdf")
|
||||
|
||||
|
||||
class TestAttachment(TestCase):
|
||||
|
||||
def test_init(self):
|
||||
data = base64.encodebytes(b"0")
|
||||
self.assertEqual(Attachment(data, "application/pdf").suffix, "pdf")
|
||||
self.assertEqual(Attachment(data, "image/png").suffix, "png")
|
||||
self.assertEqual(Attachment(data, "image/jpeg").suffix, "jpeg")
|
||||
self.assertEqual(Attachment(data, "image/gif").suffix, "gif")
|
||||
self.assertEqual(Attachment(data, "image/tiff").suffix, "tiff")
|
||||
self.assertEqual(Attachment(data, "image/png").read(), data)
|
||||
|
@@ -1 +1 @@
|
||||
from .consumers.mail import TestMailConsumer
|
||||
from .consumers.mail import TestMailFetcher
|
||||
|
Reference in New Issue
Block a user