import pytest from review_agent.file_summary.services.product_detect import detect_product_name from review_agent.models import Conversation, FileSummaryBatch, FileSummaryItem pytestmark = pytest.mark.django_db def test_detect_product_name_from_top_level_directory(django_user_model): user = django_user_model.objects.create_user(username="owner", password="pass") conversation = Conversation.objects.create(user=user, title="新对话 06-06") batch = FileSummaryBatch.objects.create(conversation=conversation, user=user, batch_no="FS-D") FileSummaryItem.objects.create( batch=batch, file_index=1, file_name="说明书.docx", file_type="docx", relative_path="甲型试剂盒/说明书.docx", storage_path="x", ) product_name = detect_product_name(batch) batch.refresh_from_db() conversation.refresh_from_db() assert product_name == "甲型试剂盒" assert batch.product_name == "甲型试剂盒" assert conversation.title == "甲型试剂盒-文件汇总"