meal-order-manager/tests
Adam Moussa b6733703ab Add admin summary-PDF download endpoint and button
The weekly summary PDF generated at Thursday close was stored in the
reports bucket with no way to reach it from the UI — admins had to pull
it from S3 manually. Surface it in the admin panel:

- submit_order: GET /api/admin/summary-pdf?week= (admin-gated) returns
  a 5-minute presigned URL from the SUMMARY item's stamped PDF key;
  404 for weeks that haven't closed.
- template.yaml: REPORTS_BUCKET env var + read-only s3:GetObject on
  reports/* for SubmitOrderFunction (needed so the presigned URL is
  signed with sufficient permissions).
- generate_form.py: "Download summary PDF" button in the admin header;
  explains Thursday-close timing on 404.
- Tests: presign happy path, 404 open week, 400 missing week, 401
  unauthenticated.
- README updated.
2026-06-05 18:41:55 -04:00
..
conftest.py Add discount pricing, Google auth, and order hardening (#10) 2026-05-13 18:00:21 -04:00
test_aggregate_orders.py Add weekly summary PDF and admin order-list download (#16) (#17) 2026-06-01 18:49:58 -04:00
test_close_form.py Add discount pricing, Google auth, and order hardening (#10) 2026-05-13 18:00:21 -04:00
test_pdf.py Add weekly summary PDF and admin order-list download (#16) (#17) 2026-06-01 18:49:58 -04:00
test_secrets.py Add discount pricing, Google auth, and order hardening (#10) 2026-05-13 18:00:21 -04:00
test_slack_notifier.py Add discount pricing, Google auth, and order hardening (#10) 2026-05-13 18:00:21 -04:00
test_submit_order.py Add admin summary-PDF download endpoint and button 2026-06-05 18:41:55 -04:00