]> git.ipfire.org Git - thirdparty/paperless-ngx.git/commitdiff
Cover matching
authorshamoon <4887959+shamoon@users.noreply.github.com>
Tue, 29 Apr 2025 03:50:03 +0000 (20:50 -0700)
committershamoon <4887959+shamoon@users.noreply.github.com>
Wed, 2 Jul 2025 18:04:01 +0000 (11:04 -0700)
src/paperless/tests/test_ai_matching.py

index e5eaf27d1af775f4d5b408775a3b5ddc2ded9253..bcc545cbab96ac445a37d7f025f0e4ac1fcd4bae 100644 (file)
@@ -68,3 +68,19 @@ class TestAIMatching(TestCase):
         matched_objects = [self.tag1]
         unmatched_names = extract_unmatched_names(llm_names, matched_objects)
         self.assertEqual(unmatched_names, ["Nonexistent Tag"])
+
+    @patch("paperless.ai.matching.get_objects_for_user_owner_aware")
+    def test_match_tags_by_name_with_empty_names(self, mock_get_objects):
+        mock_get_objects.return_value = Tag.objects.all()
+        names = [None, "", "   "]
+        result = match_tags_by_name(names, user=None)
+        self.assertEqual(result, [])
+
+    @patch("paperless.ai.matching.get_objects_for_user_owner_aware")
+    def test_match_tags_with_fuzzy_matching(self, mock_get_objects):
+        mock_get_objects.return_value = Tag.objects.all()
+        names = ["Test Taag 1", "Teest Tag 2"]
+        result = match_tags_by_name(names, user=None)
+        self.assertEqual(len(result), 2)
+        self.assertEqual(result[0].name, "Test Tag 1")
+        self.assertEqual(result[1].name, "Test Tag 2")