46 lines
1.6 KiB
Python
46 lines
1.6 KiB
Python
import pytest
|
|
from django.urls import reverse
|
|
|
|
from review_agent.models import Conversation, RegulatoryInfoPackageBatch, WorkflowNodeRun
|
|
|
|
|
|
pytestmark = pytest.mark.django_db
|
|
|
|
|
|
def test_workspace_renders_regulatory_info_package_chip_and_card(client, django_user_model):
|
|
user = django_user_model.objects.create_user(username="owner", password="pass")
|
|
conversation = Conversation.objects.create(user=user, title="会话")
|
|
batch = RegulatoryInfoPackageBatch.objects.create(
|
|
conversation=conversation,
|
|
user=user,
|
|
batch_no="RIP-CARD",
|
|
status=RegulatoryInfoPackageBatch.Status.SUCCESS,
|
|
generated_files=[{"status": "success"} for _ in range(7)],
|
|
)
|
|
WorkflowNodeRun.objects.create(
|
|
workflow_type="regulatory_info_package",
|
|
workflow_batch_id=batch.pk,
|
|
node_group="regulatory_info_package",
|
|
node_code="zip_export",
|
|
node_name="打包下载",
|
|
status=WorkflowNodeRun.Status.SUCCESS,
|
|
progress=100,
|
|
)
|
|
client.force_login(user)
|
|
|
|
response = client.get(f"{reverse('chat')}?conversation={conversation.pk}")
|
|
content = response.content.decode("utf-8")
|
|
|
|
assert "第1章监管信息" in content
|
|
assert 'data-workflow-type="regulatory_info_package"' in content
|
|
assert "data-regulatory-info-package-status-url-template" in content
|
|
assert "RIP-CARD" in content
|
|
|
|
|
|
def test_frontend_selects_regulatory_info_package_status_url():
|
|
script = open("static/js/app.js", encoding="utf-8").read()
|
|
|
|
assert 'workflow_type === "regulatory_info_package"' in script
|
|
assert "data-regulatory-info-package-status-url-template" in script
|
|
|