This commit is contained in:
2026-04-25 17:22:41 +03:30
parent 569d520a5c
commit aa24fc22b0
124 changed files with 8491 additions and 2582 deletions
+17 -1
View File
@@ -2,7 +2,7 @@ from unittest.mock import patch
from django.test import SimpleTestCase
from rag.chat import build_rag_context
from rag.chat import _normalize_history_messages, build_rag_context
class ChatContextTests(SimpleTestCase):
@@ -37,6 +37,22 @@ class ChatContextTests(SimpleTestCase):
self.assertIn("farm chunk 1", sent_texts)
self.assertIn("farm chunk 2", sent_texts)
def test_normalize_history_messages_supports_user_images(self):
messages = _normalize_history_messages(
[
{"role": "user", "content": "این تصویر مزرعه است", "image_urls": ["https://example.com/a.jpg"]},
{"role": "assistant", "content": "تصویر دریافت شد."},
]
)
self.assertEqual(len(messages), 2)
self.assertEqual(messages[0]["role"], "user")
self.assertIsInstance(messages[0]["content"], list)
self.assertEqual(messages[0]["content"][0]["type"], "text")
self.assertEqual(messages[0]["content"][1]["type"], "image_url")
self.assertEqual(messages[1]["role"], "assistant")
self.assertEqual(messages[1]["content"], "تصویر دریافت شد.")
@patch("rag.chat.search_with_texts", return_value=[])
@patch("rag.chat.chunk_text", return_value=["farm chunk"])
def test_build_rag_context_returns_full_farm_when_kb_empty(