fix(dm): WebSocket 연결 완료 시점을 보정한다
This commit is contained in:
@@ -323,9 +323,11 @@ class DmChatRoomViewModelTest {
|
||||
viewModel.enter(roomId = 10L, creatorId = 0L)
|
||||
|
||||
viewModel.connectRealtime()
|
||||
assertEquals(false, viewModel.isRealtimeConnectedForTest())
|
||||
socketFactory.emitJoined()
|
||||
|
||||
assertEquals(listOf(RealtimeConnectCall("test-token", 10L)), socketFactory.connectCalls)
|
||||
assertEquals(true, viewModel.isRealtimeConnectedForTest())
|
||||
assertEquals(listOf(MessagesCall("Bearer test-token", 10L, null, 20)), api.messagesCalls)
|
||||
val state = viewModel.chatRoomStateLiveData.requireValue() as DmChatRoomUiState.Content
|
||||
assertEquals(listOf(1L, 2L), state.messages.map { it.messageId })
|
||||
@@ -340,6 +342,8 @@ class DmChatRoomViewModelTest {
|
||||
viewModel.connectRealtime()
|
||||
|
||||
assertEquals(listOf(RealtimeConnectCall("test-token", 10L)), socketFactory.connectCalls)
|
||||
assertEquals(1, socketFactory.webSocket.sentTexts.size)
|
||||
assertEquals("JOIN_ROOM", socketFactory.webSocket.sentJsonAt(0).get("type").asString)
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -651,6 +655,12 @@ class DmChatRoomViewModelTest {
|
||||
method.isAccessible = true
|
||||
method.invoke(this)
|
||||
}
|
||||
|
||||
fun DmChatRoomViewModel.isRealtimeConnectedForTest(): Boolean {
|
||||
val field = DmChatRoomViewModel::class.java.getDeclaredField("isRealtimeConnected")
|
||||
field.isAccessible = true
|
||||
return field.getBoolean(this)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user