paperless-ngx/src/documents/tests/test_consumer.py

94 lines
3.1 KiB
Python
Raw Normal View History

2016-02-11 12:25:23 +00:00
from django.test import TestCase
2016-03-07 21:37:18 +02:00
from ..models import FileInfo
2016-02-11 12:25:23 +00:00
class TestAttachment(TestCase):
2016-02-21 00:14:50 +00:00
2016-02-11 22:05:55 +00:00
TAGS = ("tag1", "tag2", "tag3")
SUFFIXES = (
"pdf", "png", "jpg", "jpeg", "gif",
"PDF", "PNG", "JPG", "JPEG", "GIF",
"PdF", "PnG", "JpG", "JPeG", "GiF",
)
2016-02-21 00:14:50 +00:00
2016-02-11 22:05:55 +00:00
def _test_guess_attributes_from_name(self, path, sender, title, tags):
for suffix in self.SUFFIXES:
2016-02-11 22:05:55 +00:00
f = path.format(suffix)
2016-03-07 21:37:18 +02:00
file_info = FileInfo.from_path(f)
self.assertEqual(file_info.correspondent.name, sender, f)
self.assertEqual(file_info.title, title, f)
self.assertEqual(tuple([t.slug for t in file_info.tags]), tags, f)
if suffix.lower() == "jpeg":
2016-03-07 21:37:18 +02:00
self.assertEqual(file_info.suffix, "jpg", f)
else:
2016-03-07 21:37:18 +02:00
self.assertEqual(file_info.suffix, suffix.lower(), f)
2016-02-11 12:25:23 +00:00
2016-02-11 22:05:55 +00:00
def test_guess_attributes_from_name0(self):
self._test_guess_attributes_from_name(
"/path/to/Sender - Title.{}", "Sender", "Title", ())
def test_guess_attributes_from_name1(self):
self._test_guess_attributes_from_name(
"/path/to/Spaced Sender - Title.{}", "Spaced Sender", "Title", ())
def test_guess_attributes_from_name2(self):
self._test_guess_attributes_from_name(
"/path/to/Sender - Spaced Title.{}", "Sender", "Spaced Title", ())
def test_guess_attributes_from_name3(self):
self._test_guess_attributes_from_name(
"/path/to/Dashed-Sender - Title.{}", "Dashed-Sender", "Title", ())
def test_guess_attributes_from_name4(self):
self._test_guess_attributes_from_name(
"/path/to/Sender - Dashed-Title.{}", "Sender", "Dashed-Title", ())
def test_guess_attributes_from_name5(self):
self._test_guess_attributes_from_name(
"/path/to/Sender - Title - tag1,tag2,tag3.{}",
"Sender",
"Title",
self.TAGS
)
def test_guess_attributes_from_name6(self):
self._test_guess_attributes_from_name(
"/path/to/Spaced Sender - Title - tag1,tag2,tag3.{}",
"Spaced Sender",
"Title",
self.TAGS
)
def test_guess_attributes_from_name7(self):
self._test_guess_attributes_from_name(
"/path/to/Sender - Spaced Title - tag1,tag2,tag3.{}",
"Sender",
"Spaced Title",
self.TAGS
)
def test_guess_attributes_from_name8(self):
self._test_guess_attributes_from_name(
"/path/to/Dashed-Sender - Title - tag1,tag2,tag3.{}",
"Dashed-Sender",
"Title",
self.TAGS
)
def test_guess_attributes_from_name9(self):
self._test_guess_attributes_from_name(
"/path/to/Sender - Dashed-Title - tag1,tag2,tag3.{}",
"Sender",
"Dashed-Title",
self.TAGS
)
def test_guess_attributes_from_name10(self):
self._test_guess_attributes_from_name(
"/path/to/Σενδερ - Τιτλε - tag1,tag2,tag3.{}",
"Σενδερ",
"Τιτλε",
self.TAGS
2016-02-11 12:25:23 +00:00
)