Небольшие доработки по трейсу
This commit is contained in:
@@ -0,0 +1,41 @@
|
||||
from app_runtime.workflow.persistence.workflow_repository import WorkflowRepository
|
||||
|
||||
|
||||
class StubConnectionFactory:
|
||||
@staticmethod
|
||||
def dumps(snapshot) -> str:
|
||||
return str(snapshot)
|
||||
|
||||
|
||||
def test_build_run_payload_prefers_active_task_trace_id() -> None:
|
||||
repository = WorkflowRepository(StubConnectionFactory())
|
||||
snapshot = {
|
||||
"payload": {"inbox_message": {"external_message_id": "msg-1", "id": 7}},
|
||||
"state": {
|
||||
"runtime": {
|
||||
"trace_id": "task-trace-1",
|
||||
"email_trace_id": "message-trace-1",
|
||||
"queue_task_id": 13,
|
||||
}
|
||||
},
|
||||
}
|
||||
|
||||
payload = repository._build_run_payload("estimate", snapshot)
|
||||
|
||||
assert payload[0] == "estimate"
|
||||
assert payload[2] == "msg-1"
|
||||
assert payload[3] == 13
|
||||
assert payload[4] == 7
|
||||
assert payload[8] == "task-trace-1"
|
||||
|
||||
|
||||
def test_build_run_payload_falls_back_to_legacy_email_trace_id() -> None:
|
||||
repository = WorkflowRepository(StubConnectionFactory())
|
||||
snapshot = {
|
||||
"payload": {"inbox_message": {"external_message_id": "msg-2", "id": 8}},
|
||||
"state": {"runtime": {"email_trace_id": "message-trace-2"}},
|
||||
}
|
||||
|
||||
payload = repository._build_run_payload("estimate", snapshot)
|
||||
|
||||
assert payload[8] == "message-trace-2"
|
||||
Reference in New Issue
Block a user