[READY][Gameplay] #310 Host transition idempotency and error catalog for scoreboard -> next round / finish #320

Merged
agw merged 45 commits from dev/issue-310-host-transition-idempotency-v2 into main 2026-03-18 06:52:04 +01:00
Showing only changes of commit 2cd8d940f9 - Show all commits

View File

@@ -99,6 +99,18 @@ class LobbyGameplayExtractionTests(TestCase):
self.assertNotIn("build_finish_game_response", source) self.assertNotIn("build_finish_game_response", source)
self.assertNotIn("build_finish_game_phase_event", source) self.assertNotIn("build_finish_game_phase_event", source)
def test_session_detail_view_source_stays_http_thin(self):
source = inspect.getsource(inspect.unwrap(lobby_views.session_detail))
self.assertIn("session = _maybe_promote_reveal_to_scoreboard(session)", source)
self.assertIn("current_round_question = _get_current_round_question(session)", source)
self.assertIn("round_question_payload = _build_round_question_payload(current_round_question)", source)
self.assertIn("phase_view_model = _build_phase_view_model(", source)
self.assertNotIn("lies.select_related", source)
self.assertNotIn("guesses.select_related", source)
self.assertNotIn("Player.objects.filter(session=session)", source)
self.assertNotIn("leaderboard =", source)
@patch("lobby.views.sync_broadcast_phase_event") @patch("lobby.views.sync_broadcast_phase_event")
@patch("lobby.views._start_round") @patch("lobby.views._start_round")