feat(chat): 채팅방 필터 모델을 추가한다
This commit is contained in:
@@ -0,0 +1,15 @@
|
||||
package kr.co.vividnext.sodalive.v2.main.chat.model
|
||||
|
||||
enum class ChatRoomFilter(val apiValue: String) {
|
||||
ALL("ALL"),
|
||||
AI("AI"),
|
||||
DM("DM");
|
||||
|
||||
companion object {
|
||||
fun fromTabIndex(index: Int): ChatRoomFilter = when (index) {
|
||||
1 -> AI
|
||||
2 -> DM
|
||||
else -> ALL
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,28 @@
|
||||
package kr.co.vividnext.sodalive.v2.main.chat
|
||||
|
||||
import kr.co.vividnext.sodalive.v2.main.chat.model.ChatRoomFilter
|
||||
import org.junit.Assert.assertEquals
|
||||
import org.junit.Test
|
||||
|
||||
class ChatRoomFilterTest {
|
||||
|
||||
@Test
|
||||
fun `탭 index는 채팅방 filter로 매핑된다`() {
|
||||
assertEquals(ChatRoomFilter.ALL, ChatRoomFilter.fromTabIndex(0))
|
||||
assertEquals(ChatRoomFilter.AI, ChatRoomFilter.fromTabIndex(1))
|
||||
assertEquals(ChatRoomFilter.DM, ChatRoomFilter.fromTabIndex(2))
|
||||
}
|
||||
|
||||
@Test
|
||||
fun `유효하지 않은 탭 index는 전체 filter로 매핑된다`() {
|
||||
assertEquals(ChatRoomFilter.ALL, ChatRoomFilter.fromTabIndex(-1))
|
||||
assertEquals(ChatRoomFilter.ALL, ChatRoomFilter.fromTabIndex(3))
|
||||
}
|
||||
|
||||
@Test
|
||||
fun `filter api value는 요청 계약과 일치한다`() {
|
||||
assertEquals("ALL", ChatRoomFilter.ALL.apiValue)
|
||||
assertEquals("AI", ChatRoomFilter.AI.apiValue)
|
||||
assertEquals("DM", ChatRoomFilter.DM.apiValue)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user