refactor(gameplay): extract round question payload builder
This commit is contained in:
@@ -60,6 +60,7 @@ class LobbyGameplayExtractionTests(TestCase):
|
||||
self.assertIs(lobby_views._start_next_round, gameplay_services.start_next_round)
|
||||
self.assertIs(lobby_views._finish_game, gameplay_services.finish_game)
|
||||
self.assertIs(lobby_views._build_phase_view_model, gameplay_payloads.build_phase_view_model)
|
||||
self.assertIs(lobby_views._build_round_question_payload, gameplay_payloads.build_round_question_payload)
|
||||
self.assertIs(lobby_views._build_scoreboard_phase_event, gameplay_payloads.build_scoreboard_phase_event)
|
||||
|
||||
def test_start_next_round_view_source_stays_http_thin(self):
|
||||
|
||||
@@ -14,6 +14,7 @@ from fupogfakta.payloads import (
|
||||
build_lie_started_payload as _build_lie_started_payload,
|
||||
build_phase_view_model as _build_phase_view_model,
|
||||
build_reveal_payload as _build_reveal_payload,
|
||||
build_round_question_payload as _build_round_question_payload,
|
||||
build_scoreboard_phase_event as _build_scoreboard_phase_event,
|
||||
)
|
||||
from fupogfakta.services import (
|
||||
@@ -190,15 +191,7 @@ def session_detail(request: HttpRequest, code: str) -> JsonResponse:
|
||||
session = _maybe_promote_reveal_to_scoreboard(session)
|
||||
current_round_question = _get_current_round_question(session)
|
||||
|
||||
round_question_payload = None
|
||||
if current_round_question:
|
||||
round_question_payload = {
|
||||
"id": current_round_question.id,
|
||||
"round_number": current_round_question.round_number,
|
||||
"prompt": current_round_question.question.prompt,
|
||||
"shown_at": current_round_question.shown_at.isoformat(),
|
||||
"answers": [{"text": text} for text in (current_round_question.mixed_answers or [])],
|
||||
}
|
||||
round_question_payload = _build_round_question_payload(current_round_question)
|
||||
|
||||
phase_view_model = _build_phase_view_model(
|
||||
session,
|
||||
|
||||
Reference in New Issue
Block a user