feat(chat): 채팅 탭에서 DM 채팅방을 연다

This commit is contained in:
2026-06-11 11:17:26 +09:00
parent 590a52c605
commit a0b95ea3bd
2 changed files with 10 additions and 4 deletions

View File

@@ -12,6 +12,7 @@ import kr.co.vividnext.sodalive.base.BaseFragment
import kr.co.vividnext.sodalive.chat.talk.room.ChatRoomActivity import kr.co.vividnext.sodalive.chat.talk.room.ChatRoomActivity
import kr.co.vividnext.sodalive.common.LoadingDialog import kr.co.vividnext.sodalive.common.LoadingDialog
import kr.co.vividnext.sodalive.databinding.FragmentV2MainChatBinding import kr.co.vividnext.sodalive.databinding.FragmentV2MainChatBinding
import kr.co.vividnext.sodalive.v2.main.chat.dm.DmChatRoomActivity
import kr.co.vividnext.sodalive.v2.main.chat.model.ChatRoomFilter import kr.co.vividnext.sodalive.v2.main.chat.model.ChatRoomFilter
import kr.co.vividnext.sodalive.v2.main.chat.model.ChatRoomListUiItem import kr.co.vividnext.sodalive.v2.main.chat.model.ChatRoomListUiItem
import kr.co.vividnext.sodalive.v2.main.chat.model.ChatRoomListUiState import kr.co.vividnext.sodalive.v2.main.chat.model.ChatRoomListUiState
@@ -124,7 +125,9 @@ class ChatMainFragment : BaseFragment<FragmentV2MainChatBinding>(
} }
private fun onChatRoomClick(item: ChatRoomListUiItem) { private fun onChatRoomClick(item: ChatRoomListUiItem) {
if (item.chatType != ChatRoomType.AI) return when (item.chatType) {
startActivity(ChatRoomActivity.newIntent(requireContext(), item.roomId)) ChatRoomType.AI -> startActivity(ChatRoomActivity.newIntent(requireContext(), item.roomId))
ChatRoomType.DM -> startActivity(DmChatRoomActivity.newIntentByRoomId(requireContext(), item.roomId))
}
} }
} }

View File

@@ -124,12 +124,15 @@ class ChatMainFragmentLayoutTest {
} }
@Test @Test
fun `채팅 fragment source는 AI 항목만 채팅방으로 이동한다`() { fun `채팅 fragment source는 AI와 DM 항목을 각각 채팅방으로 이동한다`() {
val source = chatMainFragmentSource() val source = chatMainFragmentSource()
assertTrue(source.contains("private fun onChatRoomClick(item: ChatRoomListUiItem)")) assertTrue(source.contains("private fun onChatRoomClick(item: ChatRoomListUiItem)"))
assertTrue(source.contains("if (item.chatType != ChatRoomType.AI) return")) assertTrue(source.contains("when (item.chatType)"))
assertTrue(source.contains("ChatRoomType.AI ->"))
assertTrue(source.contains("ChatRoomActivity.newIntent(requireContext(), item.roomId)")) assertTrue(source.contains("ChatRoomActivity.newIntent(requireContext(), item.roomId)"))
assertTrue(source.contains("ChatRoomType.DM ->"))
assertTrue(source.contains("DmChatRoomActivity.newIntentByRoomId(requireContext(), item.roomId)"))
assertTrue(source.contains("btnChatFloating.setOnClickListener { }")) assertTrue(source.contains("btnChatFloating.setOnClickListener { }"))
} }