Skip to content

Commit bdb54d5

Browse files
authored
Merge branch 'dev' into refactor/126
2 parents ce84279 + aea4c01 commit bdb54d5

File tree

7 files changed

+15
-13
lines changed

7 files changed

+15
-13
lines changed

backend/src/main/java/io/f1/backend/domain/game/app/GameService.java

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -176,7 +176,13 @@ public void gameEnd(Room room) {
176176
room.initializePlayers();
177177

178178
List<Player> disconnectedPlayers = room.getDisconnectedPlayers();
179-
roomService.handleDisconnectedPlayers(room, disconnectedPlayers);
179+
180+
if (!disconnectedPlayers.isEmpty()) {
181+
roomService.handleDisconnectedPlayers(room, disconnectedPlayers);
182+
} else {
183+
messageSender.sendBroadcast(
184+
destination, MessageType.PLAYER_LIST, toPlayerListResponse(room));
185+
}
180186

181187
room.updateRoomState(RoomState.WAITING);
182188

backend/src/main/java/io/f1/backend/domain/game/app/RoomService.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -339,10 +339,10 @@ public void exitRoomForDisconnectedPlayer(Long roomId, Player player, String ses
339339
SystemNoticeResponse systemNoticeResponse =
340340
ofPlayerEvent(player.nickname, RoomEventType.EXIT);
341341

342-
messageSender.sendBroadcast(
343-
destination, MessageType.PLAYER_LIST, toPlayerListResponse(room));
344342
messageSender.sendBroadcast(
345343
destination, MessageType.SYSTEM_NOTICE, systemNoticeResponse);
344+
messageSender.sendBroadcast(
345+
destination, MessageType.PLAYER_LIST, toPlayerListResponse(room));
346346
}
347347
}
348348

backend/src/main/java/io/f1/backend/domain/game/dto/response/PlayerListResponse.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,4 @@
22

33
import java.util.List;
44

5-
public record PlayerListResponse(String host, List<PlayerResponse> players) {}
5+
public record PlayerListResponse(String host, List<PlayerResponse> players, int currentUserCount) {}
Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
11
package io.f1.backend.domain.game.dto.response;
22

3-
public record RoomSettingResponse(
4-
String roomName, int maxUserCount, int currentUserCount, boolean locked) {}
3+
public record RoomSettingResponse(String roomName, int maxUserCount, boolean locked) {}

backend/src/main/java/io/f1/backend/domain/game/mapper/RoomMapper.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,8 @@ public static PlayerListResponse toPlayerListResponse(Room room) {
6363
.map(player -> new PlayerResponse(player.getNickname(), player.isReady()))
6464
.toList();
6565

66-
return new PlayerListResponse(room.getHost().getNickname(), playerResponseList);
66+
return new PlayerListResponse(
67+
room.getHost().getNickname(), playerResponseList, playerResponseList.size());
6768
}
6869

6970
public static RoomResponse toRoomResponse(Room room, Quiz quiz) {

backend/src/main/java/io/f1/backend/domain/game/model/Room.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -138,8 +138,8 @@ public void initializePlayers() {
138138
.forEach(
139139
player -> {
140140
player.initializeCorrectCount();
141-
player.toggleReady();
142141
});
142+
resetAllPlayerReadyStates();
143143
}
144144

145145
public String getSessionIdByUserId(Long userId) {

backend/src/test/java/io/f1/backend/domain/game/app/RoomServiceTests.java

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -47,18 +47,14 @@ class RoomServiceTests {
4747

4848
@Mock private RoomRepository roomRepository;
4949
@Mock private QuizService quizService;
50-
@Mock private GameService gameService;
51-
@Mock private TimerService timerService;
5250
@Mock private ApplicationEventPublisher eventPublisher;
5351
@Mock private MessageSender messageSender;
5452

5553
@BeforeEach
5654
void setUp() {
5755
MockitoAnnotations.openMocks(this); // @Mock 어노테이션이 붙은 필드들을 초기화합니다.
5856

59-
roomService =
60-
new RoomService(
61-
timerService, quizService, roomRepository, eventPublisher, messageSender);
57+
roomService = new RoomService(quizService, roomRepository, eventPublisher, messageSender);
6258

6359
SecurityContextHolder.clearContext();
6460
}

0 commit comments

Comments
 (0)