mirror of
				https://github.com/paperless-ngx/paperless-ngx.git
				synced 2025-10-30 03:56:23 -05:00 
			
		
		
		
	test cases
This commit is contained in:
		| @@ -13,8 +13,14 @@ from ...parsers import get_parser_class_for_mime_type | |||||||
|  |  | ||||||
| def _process_document(doc_in): | def _process_document(doc_in): | ||||||
|     document = Document.objects.get(id=doc_in) |     document = Document.objects.get(id=doc_in) | ||||||
|     parser = get_parser_class_for_mime_type(document.mime_type)( |     parser_class = get_parser_class_for_mime_type(document.mime_type) | ||||||
|         logging_group=None) |  | ||||||
|  |     if parser_class: | ||||||
|  |         parser = parser_class(logging_group=None) | ||||||
|  |     else: | ||||||
|  |         print(f"{document} No parser for mime type {document.mime_type}") | ||||||
|  |         return | ||||||
|  |  | ||||||
|     try: |     try: | ||||||
|         thumb = parser.get_optimised_thumbnail( |         thumb = parser.get_optimised_thumbnail( | ||||||
|             document.source_path, document.mime_type) |             document.source_path, document.mime_type) | ||||||
|   | |||||||
							
								
								
									
										52
									
								
								src/documents/tests/test_management_thumbnails.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										52
									
								
								src/documents/tests/test_management_thumbnails.py
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,52 @@ | |||||||
|  | import os | ||||||
|  | import shutil | ||||||
|  | from unittest import mock | ||||||
|  |  | ||||||
|  | from django.core.management import call_command | ||||||
|  | from django.test import TestCase | ||||||
|  |  | ||||||
|  | from documents.management.commands.document_thumbnails import _process_document | ||||||
|  | from documents.models import Document, Tag, Correspondent, DocumentType | ||||||
|  | from documents.tests.utils import DirectoriesMixin | ||||||
|  |  | ||||||
|  |  | ||||||
|  | class TestMakeThumbnails(DirectoriesMixin, TestCase): | ||||||
|  |  | ||||||
|  |     def make_models(self): | ||||||
|  |         self.d1 = Document.objects.create(checksum="A", title="A", content="first document", mime_type="application/pdf", filename="test.pdf") | ||||||
|  |         shutil.copy(os.path.join(os.path.dirname(__file__), "samples", "simple.pdf"), self.d1.source_path) | ||||||
|  |  | ||||||
|  |         self.d2 = Document.objects.create(checksum="Ass", title="A", content="first document", mime_type="application/pdf", filename="test2.pdf") | ||||||
|  |         shutil.copy(os.path.join(os.path.dirname(__file__), "samples", "simple.pdf"), self.d2.source_path) | ||||||
|  |  | ||||||
|  |     def setUp(self) -> None: | ||||||
|  |         super(TestMakeThumbnails, self).setUp() | ||||||
|  |         self.make_models() | ||||||
|  |  | ||||||
|  |     def test_process_document(self): | ||||||
|  |         self.assertFalse(os.path.isfile(self.d1.thumbnail_path)) | ||||||
|  |         _process_document(self.d1.id) | ||||||
|  |         self.assertTrue(os.path.isfile(self.d1.thumbnail_path)) | ||||||
|  |  | ||||||
|  |     @mock.patch("documents.management.commands.document_thumbnails.shutil.move") | ||||||
|  |     def test_process_document_invalid_mime_type(self, m): | ||||||
|  |         self.d1.mime_type = "asdasdasd" | ||||||
|  |         self.d1.save() | ||||||
|  |  | ||||||
|  |         _process_document(self.d1.id) | ||||||
|  |  | ||||||
|  |         m.assert_not_called() | ||||||
|  |  | ||||||
|  |     def test_command(self): | ||||||
|  |         self.assertFalse(os.path.isfile(self.d1.thumbnail_path)) | ||||||
|  |         self.assertFalse(os.path.isfile(self.d2.thumbnail_path)) | ||||||
|  |         call_command('document_thumbnails') | ||||||
|  |         self.assertTrue(os.path.isfile(self.d1.thumbnail_path)) | ||||||
|  |         self.assertTrue(os.path.isfile(self.d2.thumbnail_path)) | ||||||
|  |  | ||||||
|  |     def test_command_documentid(self): | ||||||
|  |         self.assertFalse(os.path.isfile(self.d1.thumbnail_path)) | ||||||
|  |         self.assertFalse(os.path.isfile(self.d2.thumbnail_path)) | ||||||
|  |         call_command('document_thumbnails', '-d', f"{self.d1.id}") | ||||||
|  |         self.assertTrue(os.path.isfile(self.d1.thumbnail_path)) | ||||||
|  |         self.assertFalse(os.path.isfile(self.d2.thumbnail_path)) | ||||||
		Reference in New Issue
	
	Block a user
	 jonaswinkler
					jonaswinkler