Files
sciagent/be0/tests/test_submissions_projection_research_kind.py
Thinh Lam 688fac73e9
CI/CD / backend (push) Failing after 2m8s
CI/CD / frontend (push) Failing after 1m40s
CI/CD / deploy (push) Has been skipped
sciagent code + Gitea Actions CI/CD
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-30 09:38:30 +07:00

44 lines
1.4 KiB
Python

"""Projection of `tabs.application.researchEvidenceKind` onto list rows (no DB).
Run: cd be0 && python -m unittest tests.test_submissions_projection_research_kind -v
"""
from __future__ import annotations
import unittest
import uuid
from datetime import datetime, timezone
from types import SimpleNamespace
class SubmissionsResearchEvidenceKindProjectionTests(unittest.TestCase):
def test_poster_without_review_round_trips_on_api_row(self) -> None:
from src.initiative_db.submissions import _as_submission_item
ini = SimpleNamespace(
id=uuid.uuid4(),
case_code="CASE-PROJ-RK",
status="submitted",
submitted_at=datetime(2026, 1, 1, 12, 0, 0, tzinfo=timezone.utc),
)
payload = {
"submissionRecord": {
"id": "sub-deadbeefcafe",
"submittedDate": "2026-01-01T12:00:00.000Z",
"name": "Test",
},
"tabs": {
"application": {
"initiativeClassification": "research",
"researchEvidenceKind": "poster-without-review",
}
},
}
row = _as_submission_item(ini, payload) # type: ignore[arg-type]
self.assertEqual(row.get("researchEvidenceKind"), "poster-without-review")
self.assertEqual(row.get("initiativeClassification"), "research")
if __name__ == "__main__":
unittest.main()