]> git.ipfire.org Git - thirdparty/paperless-ngx.git/commitdiff
Development: fix localization failing tests (#10840)
authorshamoon <4887959+shamoon@users.noreply.github.com>
Fri, 12 Sep 2025 23:42:52 +0000 (16:42 -0700)
committerGitHub <noreply@github.com>
Fri, 12 Sep 2025 23:42:52 +0000 (16:42 -0700)
---------

Co-authored-by: Trenton H <797416+stumpylog@users.noreply.github.com>
src/documents/tests/test_document_model.py
src/documents/tests/test_management.py
src/documents/tests/test_workflows.py

index fc4f17e046b081f76cff90435dfb9ffe2e103c32..46b16d727d634f10a38707051cb29e3abfc445c4 100644 (file)
@@ -18,14 +18,17 @@ class TestDocument(TestCase):
         self.originals_dir = tempfile.mkdtemp()
         self.thumb_dir = tempfile.mkdtemp()
 
-        override_settings(
+        self.overrides = override_settings(
             ORIGINALS_DIR=self.originals_dir,
             THUMBNAIL_DIR=self.thumb_dir,
-        ).enable()
+        )
+
+        self.overrides.enable()
 
     def tearDown(self) -> None:
         shutil.rmtree(self.originals_dir)
         shutil.rmtree(self.thumb_dir)
+        self.overrides.disable()
 
     def test_file_deletion(self):
         document = Document.objects.create(
index 0a51b71e17e8cecbc5178691257832d766c94fad..014f5d6730f8274a399beab5b7e9f173047b0c57 100644 (file)
@@ -97,12 +97,6 @@ class TestArchiver(DirectoriesMixin, FileSystemAssertsMixin, TestCase):
 
 
 class TestDecryptDocuments(FileSystemAssertsMixin, TestCase):
-    @override_settings(
-        ORIGINALS_DIR=(Path(__file__).parent / "samples" / "originals"),
-        THUMBNAIL_DIR=(Path(__file__).parent / "samples" / "thumb"),
-        PASSPHRASE="test",
-        FILENAME_FORMAT=None,
-    )
     @mock.patch("documents.management.commands.decrypt_documents.input")
     def test_decrypt(self, m):
         media_dir = tempfile.mkdtemp()
@@ -111,55 +105,55 @@ class TestDecryptDocuments(FileSystemAssertsMixin, TestCase):
         originals_dir.mkdir(parents=True, exist_ok=True)
         thumb_dir.mkdir(parents=True, exist_ok=True)
 
-        override_settings(
+        with override_settings(
             ORIGINALS_DIR=originals_dir,
             THUMBNAIL_DIR=thumb_dir,
             PASSPHRASE="test",
-        ).enable()
-
-        doc = Document.objects.create(
-            checksum="82186aaa94f0b98697d704b90fd1c072",
-            title="wow",
-            filename="0000004.pdf.gpg",
-            mime_type="application/pdf",
-            storage_type=Document.STORAGE_TYPE_GPG,
-        )
-
-        shutil.copy(
-            (
-                Path(__file__).parent
-                / "samples"
-                / "documents"
-                / "originals"
-                / "0000004.pdf.gpg"
-            ),
-            originals_dir / "0000004.pdf.gpg",
-        )
-        shutil.copy(
-            (
-                Path(__file__).parent
-                / "samples"
-                / "documents"
-                / "thumbnails"
-                / "0000004.webp.gpg"
-            ),
-            thumb_dir / f"{doc.id:07}.webp.gpg",
-        )
-
-        call_command("decrypt_documents")
-
-        doc.refresh_from_db()
-
-        self.assertEqual(doc.storage_type, Document.STORAGE_TYPE_UNENCRYPTED)
-        self.assertEqual(doc.filename, "0000004.pdf")
-        self.assertIsFile(Path(originals_dir) / "0000004.pdf")
-        self.assertIsFile(doc.source_path)
-        self.assertIsFile(Path(thumb_dir) / f"{doc.id:07}.webp")
-        self.assertIsFile(doc.thumbnail_path)
-
-        with doc.source_file as f:
-            checksum: str = hashlib.md5(f.read()).hexdigest()
-            self.assertEqual(checksum, doc.checksum)
+            FILENAME_FORMAT=None,
+        ):
+            doc = Document.objects.create(
+                checksum="82186aaa94f0b98697d704b90fd1c072",
+                title="wow",
+                filename="0000004.pdf.gpg",
+                mime_type="application/pdf",
+                storage_type=Document.STORAGE_TYPE_GPG,
+            )
+
+            shutil.copy(
+                (
+                    Path(__file__).parent
+                    / "samples"
+                    / "documents"
+                    / "originals"
+                    / "0000004.pdf.gpg"
+                ),
+                originals_dir / "0000004.pdf.gpg",
+            )
+            shutil.copy(
+                (
+                    Path(__file__).parent
+                    / "samples"
+                    / "documents"
+                    / "thumbnails"
+                    / "0000004.webp.gpg"
+                ),
+                thumb_dir / f"{doc.id:07}.webp.gpg",
+            )
+
+            call_command("decrypt_documents")
+
+            doc.refresh_from_db()
+
+            self.assertEqual(doc.storage_type, Document.STORAGE_TYPE_UNENCRYPTED)
+            self.assertEqual(doc.filename, "0000004.pdf")
+            self.assertIsFile(Path(originals_dir) / "0000004.pdf")
+            self.assertIsFile(doc.source_path)
+            self.assertIsFile(Path(thumb_dir) / f"{doc.id:07}.webp")
+            self.assertIsFile(doc.thumbnail_path)
+
+            with doc.source_file as f:
+                checksum: str = hashlib.md5(f.read()).hexdigest()
+                self.assertEqual(checksum, doc.checksum)
 
 
 class TestMakeIndex(TestCase):
index fe5c4ff7d73e2884a0faa8efc7f5fe3c0e6a9232..7652d22b55d7def2449f4b599772b29dcd6ecf92 100644 (file)
@@ -3410,8 +3410,8 @@ class TestDateWorkflowLocalization(
         w.actions.add(action)
         w.save()
 
-        settings.SCRATCH_DIR = tmp_path / "scratch"
         (tmp_path / "scratch").mkdir(parents=True, exist_ok=True)
+        (tmp_path / "thumbnails").mkdir(parents=True, exist_ok=True)
 
         # Temporarily override "now" for the environment so templates using
         # added/created placeholders behave as if it's a different system date.
@@ -3424,6 +3424,10 @@ class TestDateWorkflowLocalization(
                 "django.utils.timezone.now",
                 return_value=self.TEST_DATETIME,
             ),
+            override_settings(
+                SCRATCH_DIR=tmp_path / "scratch",
+                THUMBNAIL_DIR=tmp_path / "thumbnails",
+            ),
         ):
             tasks.consume_file(
                 ConsumableDocument(