from documents.management.commands.document_thumbnails import _process_document
from documents.models import Document
+from documents.parsers import get_default_thumbnail
from documents.tests.utils import DirectoriesMixin
from documents.tests.utils import FileSystemAssertsMixin
)
self.d2 = Document.objects.create(
- checksum="Ass",
- title="A",
- content="first document",
+ checksum="B",
+ title="B",
+ content="second document",
mime_type="application/pdf",
filename="test2.pdf",
)
self.d2.source_path,
)
+ self.d3 = Document.objects.create(
+ checksum="C",
+ title="C",
+ content="third document",
+ mime_type="application/pdf",
+ filename="test3.pdf",
+ )
+ shutil.copy(
+ os.path.join(os.path.dirname(__file__), "samples", "password-is-test.pdf"),
+ self.d3.source_path,
+ )
+
def setUp(self) -> None:
super().setUp()
self.make_models()
_process_document(self.d1.id)
self.assertIsFile(self.d1.thumbnail_path)
+ def test_process_document_password_protected(self):
+ self.assertIsFile(get_default_thumbnail())
+ self.assertIsNotFile(self.d3.thumbnail_path)
+ _process_document(self.d3.id)
+ # Ensure default thumbnail is still there
+ self.assertIsFile(get_default_thumbnail())
+ self.assertIsFile(self.d3.thumbnail_path)
+
@mock.patch("documents.management.commands.document_thumbnails.shutil.move")
def test_process_document_invalid_mime_type(self, m: mock.Mock):
self.d1.mime_type = "asdasdasd"