V4.1 Mostly UI adjustments by GC

This commit is contained in:
Jim Lancaster
2026-08-12 13:11:50 -05:00
parent 1e8d8572d4
commit 89cf69f8a2
29 changed files with 1261 additions and 404 deletions
+31 -4
View File
@@ -1,12 +1,17 @@
"""Tests for the documents page routes and action handlers."""
from datetime import date
import pytest
import pytest_asyncio
from sqlmodel import select
from transcription.db import session_scope
from transcription.db.models import Document, DocumentPerson, DocumentPersonRole, Job, Person, Source
from transcription.db.models import Document
from transcription.db.models import DocumentPerson
from transcription.db.models import DocumentPersonRole
from transcription.db.models import Job
from transcription.db.models import Person
from transcription.db.models import Source
# --- Helper Fixtures ---
@@ -68,6 +73,8 @@ class TestDocumentsPageRendering:
assert "1924 Postcard" in response.text
assert "postcard" in response.text
assert "PC-001" in response.text
assert "Document Date" in response.text
assert "Author" in response.text
def test_document_create_page_renders_form(self, app_client):
_, client = app_client
@@ -80,6 +87,24 @@ class TestDocumentsPageRendering:
assert "Linked People by Role" in response.text
assert "Document type" in response.text
@pytest.mark.asyncio
async def test_document_create_page_preselects_person_with_disambiguating_label(self, app_client):
_, client = app_client
async with session_scope() as session:
person = Person(
full_name="Albert Edward Higgins",
display_name="Hig",
birth_date=date(1885, 1, 2),
)
session.add(person)
await session.commit()
person_id = str(person.id)
response = client.get(f"/ui/documents/new?person_id={person_id}")
assert response.status_code == 200
assert "Hig - Albert Edward Higgins (1885)" in response.text
@pytest.mark.asyncio
async def test_document_detail_page_renders_bento_grid_and_metadata(
self, app_client, seed_person_and_document
@@ -93,6 +118,8 @@ class TestDocumentsPageRendering:
assert "Letter from Hig" in response.text
assert "ZC-1924-001" in response.text
assert "Zenna Cochran" in response.text
assert f"/ui/people/{seed_person_and_document[1]}" in response.text
assert "PIPELINE JOBS" in response.text.upper()
assert "Edit Document" in response.text
@pytest.mark.asyncio
@@ -176,4 +203,4 @@ class TestDocumentsPageRendering:
assert response.status_code == 200
assert "Delete Document" in response.text
assert "Delete document permanently" in response.text
assert "Delete is blocked" not in response.text
assert "Delete is blocked" not in response.text