feat(creator-channel): FanTalk 상세 진입점을 연결한다
This commit is contained in:
@@ -2106,6 +2106,38 @@ class CreatorChannelActivitySourceTest {
|
||||
assertTrue(dmRoom.contains("putExtra(EXTRA_CREATOR_ID, creatorId)"))
|
||||
}
|
||||
|
||||
@Test
|
||||
fun `FanTalk item click source는 owner gate와 상세 ActivityResult refresh를 연결한다`() {
|
||||
val source = projectFile(
|
||||
"app/src/main/java/kr/co/vividnext/sodalive/v2/creator/channel/CreatorChannelActivity.kt"
|
||||
).readText()
|
||||
|
||||
assertTrue(
|
||||
source.contains(
|
||||
"import kr.co.vividnext.sodalive.v2.creator.channel.fantalk.detail.CreatorChannelFanTalkDetailActivity"
|
||||
)
|
||||
)
|
||||
assertTrue(
|
||||
source.contains(
|
||||
"import kr.co.vividnext.sodalive.v2.creator.channel.fantalk.detail.toFanTalkDetailPayload"
|
||||
)
|
||||
)
|
||||
assertTrue(source.contains("private val fanTalkDetailLauncher = registerForActivityResult"))
|
||||
assertTrue(source.contains("override fun onCreatorChannelFanTalkItemClicked(item: CreatorChannelFanTalkUiModel)"))
|
||||
assertTrue(source.contains("if (currentHeader?.isOwner != true) return"))
|
||||
assertTrue(source.contains("if (creatorId <= 0L || item.fanTalkId <= 0L) return"))
|
||||
assertTrue(source.contains("if (SharedPreferenceManager.token.isBlank())"))
|
||||
assertTrue(source.contains("showLoginActivity()"))
|
||||
assertTrue(source.contains("fanTalkDetailLauncher.launch("))
|
||||
assertTrue(
|
||||
source.contains(
|
||||
"CreatorChannelFanTalkDetailActivity.newIntent(this, creatorId, item.toFanTalkDetailPayload())"
|
||||
)
|
||||
)
|
||||
assertTrue(source.contains("refreshCreatorChannelFanTalk()"))
|
||||
assertTrue(source.contains("homeActionDelegate?.refreshHome()"))
|
||||
}
|
||||
|
||||
private fun projectFile(relativePath: String): File {
|
||||
val candidates = listOf(File(relativePath), File("../$relativePath"))
|
||||
return candidates.firstOrNull { it.exists() }
|
||||
|
||||
Reference in New Issue
Block a user