test_pl_menu_badge_plan_cert.py 710 B

12345678910111213141516171819202122
  1. """menu badge: plan cert pending uses EXISTS count."""
  2. from __future__ import annotations
  3. from unittest.mock import MagicMock, patch
  4. from app.services.pl_menu_badge_service import count_plan_cert_pending
  5. def test_count_plan_cert_pending_uses_sql_count_not_python_scan():
  6. db = MagicMock()
  7. query = MagicMock()
  8. db.query.return_value = query
  9. query.filter.return_value = query
  10. query.count.return_value = 4
  11. user = MagicMock()
  12. with patch("app.services.pl_menu_badge_service.apply_pl_scope", side_effect=lambda q, *a, **k: q):
  13. total = count_plan_cert_pending(db, "shanxia2.0", user)
  14. assert total == 4
  15. query.count.assert_called_once()
  16. query.all.assert_not_called()