Reporting and TZ updates

This commit is contained in:
2026-06-28 07:37:41 -04:00
parent 5e12561fb2
commit c2e4d2adeb
18 changed files with 719 additions and 268 deletions
+21 -1
View File
@@ -124,6 +124,8 @@ def test_public_ppr_create_sends_email_and_generates_token(client, db, ppr_paylo
created = create_response.json()
assert created["created_by"] == "public"
assert sent_email["to_email"] == "pilot@example.com"
assert sent_email["template_vars"]["arrival_time"] == "2026-06-20 11:00"
assert sent_email["template_vars"]["departure_time"] == "2026-06-20 13:00"
db_ppr = db.query(PPRRecord).filter(PPRRecord.id == created["id"]).one()
assert db_ppr.public_token
@@ -146,7 +148,9 @@ def test_public_ppr_token_edit_and_cancel_paths(client, ppr_factory, db):
assert cancel_response.status_code == 200
assert cancel_response.json()["status"] == "CANCELED"
assert client.get("/api/v1/pprs/public/edit/public-edit-token").status_code == 400
assert client.get("/api/v1/pprs/public/edit/public-edit-token").status_code == 200
assert client.patch("/api/v1/pprs/public/edit/public-edit-token", json={}).status_code == 400
assert client.delete("/api/v1/pprs/public/cancel/public-edit-token").status_code == 400
assert client.patch("/api/v1/pprs/public/edit/missing-token", json={}).status_code == 404
assert client.delete("/api/v1/pprs/public/cancel/missing-token").status_code == 404
@@ -179,6 +183,22 @@ def test_activate_rejects_processed_ppr(auth_client, ppr_factory):
assert "cannot be activated" in response.json()["detail"]
def test_public_ppr_processed_token_can_view_but_not_edit_or_cancel(client, ppr_factory):
ppr = ppr_factory(status="LANDED", public_token="processed-token")
get_response = client.get("/api/v1/pprs/public/edit/processed-token")
patch_response = client.patch(
"/api/v1/pprs/public/edit/processed-token",
json={"captain": "Too Late"},
)
cancel_response = client.delete("/api/v1/pprs/public/cancel/processed-token")
assert get_response.status_code == 200
assert get_response.json()["id"] == ppr.id
assert patch_response.status_code == 400
assert cancel_response.status_code == 400
def test_invalid_ppr_payload_returns_validation_error(auth_client, ppr_payload):
ppr_payload["pob_in"] = -1