generated from john/python-template
V4.4 Complete
This commit is contained in:
@@ -7,7 +7,6 @@ from sqlalchemy.exc import IntegrityError
|
||||
|
||||
from transcription.db.models import Document
|
||||
from transcription.db.models import DocumentPerson
|
||||
from transcription.db.models import DocumentPersonRole
|
||||
from transcription.db.models import DocumentType
|
||||
from transcription.db.models import Job
|
||||
from transcription.db.models import JobSource
|
||||
@@ -35,8 +34,8 @@ def _persist_document_type(session, *, label: str = "Letter") -> DocumentType:
|
||||
return document_type
|
||||
|
||||
|
||||
def _persist_person_role(session, *, code: str = "author", label: str = "Author") -> PersonRole:
|
||||
role = PersonRole(code=code, label=label)
|
||||
def _persist_person_role(session, *, label: str = "Author") -> PersonRole:
|
||||
role = PersonRole(label=label, normalized_label=label.strip().casefold())
|
||||
session.add(role)
|
||||
session.commit()
|
||||
session.refresh(role)
|
||||
@@ -195,7 +194,6 @@ class TestPersonAndDocumentPersonModel:
|
||||
first = DocumentPerson(
|
||||
document_id=document.id,
|
||||
person_id=person.id,
|
||||
role=DocumentPersonRole.AUTHOR,
|
||||
role_id=person_role.id,
|
||||
)
|
||||
session.add(first)
|
||||
@@ -204,7 +202,6 @@ class TestPersonAndDocumentPersonModel:
|
||||
duplicate = DocumentPerson(
|
||||
document_id=document.id,
|
||||
person_id=person.id,
|
||||
role=DocumentPersonRole.AUTHOR,
|
||||
role_id=person_role.id,
|
||||
)
|
||||
session.add(duplicate)
|
||||
@@ -244,7 +241,6 @@ class TestRelationships:
|
||||
link = DocumentPerson(
|
||||
document_id=document.id,
|
||||
person_id=person.id,
|
||||
role=DocumentPersonRole.AUTHOR,
|
||||
role_id=person_role.id,
|
||||
)
|
||||
session.add(link)
|
||||
@@ -257,9 +253,9 @@ class TestRelationships:
|
||||
|
||||
|
||||
class TestRegistryModels:
|
||||
def test_person_role_code_is_unique(self, session):
|
||||
_persist_person_role(session, code="mentioned", label="Mentioned")
|
||||
duplicate = PersonRole(code="mentioned", label="Mentioned Again")
|
||||
def test_person_role_normalized_label_is_unique(self, session):
|
||||
_persist_person_role(session, label="Mentioned")
|
||||
duplicate = PersonRole(label=" mentioned ", normalized_label="mentioned")
|
||||
session.add(duplicate)
|
||||
with pytest.raises(IntegrityError):
|
||||
session.commit()
|
||||
|
||||
Reference in New Issue
Block a user