]> git.ipfire.org Git - thirdparty/paperless-ngx.git/commitdiff
Fix: set match value for correspondents created by mail rule (#10820)
authorshamoon <4887959+shamoon@users.noreply.github.com>
Tue, 9 Sep 2025 16:14:48 +0000 (09:14 -0700)
committerGitHub <noreply@github.com>
Tue, 9 Sep 2025 16:14:48 +0000 (09:14 -0700)
src/paperless_mail/mail.py
src/paperless_mail/tests/test_mail.py

index 6da5e33a5086eb5bd7e46e777739fc40f538d719..edb266c51b89b8150534c39fcdc217b88b3c99a8 100644 (file)
@@ -468,7 +468,12 @@ class MailAccountHandler(LoggingMixin):
 
     def _correspondent_from_name(self, name: str) -> Correspondent | None:
         try:
-            return Correspondent.objects.get_or_create(name=name)[0]
+            return Correspondent.objects.get_or_create(
+                name=name,
+                defaults={
+                    "match": name,
+                },
+            )[0]
         except DatabaseError as e:
             self.log.error(f"Error while retrieving correspondent {name}: {e}")
             return None
index d81a130da10711f2d40e4b846ffc0ddecced86b8..70f7be50fb5afffdc0eb831419b988a7e5b28e95 100644 (file)
@@ -26,6 +26,7 @@ from rest_framework import status
 from rest_framework.test import APITestCase
 
 from documents.models import Correspondent
+from documents.models import MatchingModel
 from documents.tests.utils import DirectoriesMixin
 from documents.tests.utils import FileSystemAssertsMixin
 from paperless_mail import tasks
@@ -446,6 +447,8 @@ class TestMail(
         c = handler._get_correspondent(message, rule)
         self.assertIsNotNone(c)
         self.assertEqual(c.name, "someone@somewhere.com")
+        self.assertEqual(c.matching_algorithm, MatchingModel.MATCH_ANY)
+        self.assertEqual(c.match, "someone@somewhere.com")
         c = handler._get_correspondent(message2, rule)
         self.assertIsNotNone(c)
         self.assertEqual(c.name, "me@localhost.com")