]> git.ipfire.org Git - thirdparty/paperless-ngx.git/commitdiff
Basic verification of Comment export & exporter comment tuple fix
authorMichael Shamoon <4887959+shamoon@users.noreply.github.com>
Wed, 24 Aug 2022 05:04:27 +0000 (22:04 -0700)
committerMichael Shamoon <4887959+shamoon@users.noreply.github.com>
Wed, 24 Aug 2022 21:24:10 +0000 (14:24 -0700)
From oprhaned commits https://github.com/paperless-ngx/paperless-ngx/commit/b1855a4b7af689d0a7c7f18bf7ef513967da269f
https://github.com/paperless-ngx/paperless-ngx/commit/53f21574fd8af0f3561c12f709a14980f8f1cb7f

Co-Authored-By: Trenton Holmes <797416+stumpylog@users.noreply.github.com>
src/documents/management/commands/document_exporter.py
src/documents/tests/test_management_exporter.py

index 1493bf07805ccc778414be167d64159546aa8b97..dc53a690e56860318abec083af5fc93511ab9906 100644 (file)
@@ -127,10 +127,8 @@ class Command(BaseCommand):
                 serializers.serialize("json", DocumentType.objects.all()),
             )
 
-            manifest += (
-                json.loads(
-                    serializers.serialize("json", Comment.objects.all()),
-                ),
+            manifest += json.loads(
+                serializers.serialize("json", Comment.objects.all()),
             )
 
             documents = Document.objects.order_by("id")
index a9dcabc4d4a31ea5da2ebd498bdd669dd98bcb83..92f1d3b620bac9f69eb8731fa12bd01238977a4f 100644 (file)
@@ -10,10 +10,12 @@ from django.core.management import call_command
 from django.test import override_settings
 from django.test import TestCase
 from documents.management.commands import document_exporter
+from documents.models import Comment
 from documents.models import Correspondent
 from documents.models import Document
 from documents.models import DocumentType
 from documents.models import Tag
+from documents.models import User
 from documents.sanity_checker import check_sanity
 from documents.settings import EXPORTER_FILE_NAME
 from documents.tests.utils import DirectoriesMixin
@@ -25,6 +27,8 @@ class TestExportImport(DirectoriesMixin, TestCase):
         self.target = tempfile.mkdtemp()
         self.addCleanup(shutil.rmtree, self.target)
 
+        self.user = User.objects.create(username="temp_admin")
+
         self.d1 = Document.objects.create(
             content="Content",
             checksum="42995833e01aea9b3edee44bbfdd7ce1",
@@ -57,6 +61,12 @@ class TestExportImport(DirectoriesMixin, TestCase):
             storage_type=Document.STORAGE_TYPE_GPG,
         )
 
+        self.comment = Comment.objects.create(
+            comment="This is a comment. amaze.",
+            document=self.d1,
+            user=self.user,
+        )
+
         self.t1 = Tag.objects.create(name="t")
         self.dt1 = DocumentType.objects.create(name="dt")
         self.c1 = Correspondent.objects.create(name="c")
@@ -110,7 +120,7 @@ class TestExportImport(DirectoriesMixin, TestCase):
 
         manifest = self._do_export(use_filename_format=use_filename_format)
 
-        self.assertEqual(len(manifest), 8)
+        self.assertEqual(len(manifest), 10)
         self.assertEqual(
             len(list(filter(lambda e: e["model"] == "documents.document", manifest))),
             4,
@@ -171,6 +181,11 @@ class TestExportImport(DirectoriesMixin, TestCase):
                         checksum = hashlib.md5(f.read()).hexdigest()
                     self.assertEqual(checksum, element["fields"]["archive_checksum"])
 
+            elif element["model"] == "documents.comment":
+                self.assertEqual(element["fields"]["comment"], self.comment.comment)
+                self.assertEqual(element["fields"]["document"], self.d1.id)
+                self.assertEqual(element["fields"]["user"], self.user.id)
+
         with paperless_environment() as dirs:
             self.assertEqual(Document.objects.count(), 4)
             Document.objects.all().delete()