37 lines
1.2 KiB
Python
37 lines
1.2 KiB
Python
from pipelines.orm.data_science_dev.congress import BillText, BillTextSummary
|
|
|
|
|
|
def test_default_summary_prefers_primary_summary() -> None:
|
|
primary_summary = BillTextSummary(id=1, bill_text_id=10, summary="primary")
|
|
latest_summary = BillTextSummary(id=2, bill_text_id=10, summary="latest")
|
|
bill_text = BillText(
|
|
id=10,
|
|
bill_id=5,
|
|
version_code="ih",
|
|
summaries=[latest_summary],
|
|
primary_summary=primary_summary,
|
|
)
|
|
|
|
assert bill_text.default_summary() is primary_summary
|
|
|
|
|
|
def test_default_summary_falls_back_to_latest_summary() -> None:
|
|
latest_summary = BillTextSummary(id=2, bill_text_id=10, summary="latest")
|
|
older_summary = BillTextSummary(id=1, bill_text_id=10, summary="older")
|
|
bill_text = BillText(
|
|
id=10,
|
|
bill_id=5,
|
|
version_code="ih",
|
|
summaries=[latest_summary, older_summary],
|
|
)
|
|
|
|
assert bill_text.latest_summary() is latest_summary
|
|
assert bill_text.default_summary() is latest_summary
|
|
|
|
|
|
def test_default_summary_is_none_without_summaries() -> None:
|
|
bill_text = BillText(id=10, bill_id=5, version_code="ih")
|
|
|
|
assert bill_text.latest_summary() is None
|
|
assert bill_text.default_summary() is None
|