feat(creator): 커뮤니티 탭 activity 동작을 연결한다
This commit is contained in:
@@ -416,7 +416,6 @@ class CreatorChannelActivitySourceTest {
|
||||
assertFalse(source.contains("if (tab != CreatorChannelTab.Home) return"))
|
||||
assertTrue(pagerAdapter.contains("CreatorChannelTab.Audio -> CreatorChannelAudioFragment.newInstance(creatorId)"))
|
||||
assertTrue(pagerAdapter.contains("CreatorChannelTab.Series -> CreatorChannelSeriesFragment.newInstance(creatorId)"))
|
||||
assertFalse(source.contains("CreatorChannelTab.Community ->"))
|
||||
assertFalse(source.contains("CreatorChannelTab.FanTalk ->"))
|
||||
assertFalse(source.contains("CreatorChannelTab.Donation ->"))
|
||||
}
|
||||
@@ -440,6 +439,60 @@ class CreatorChannelActivitySourceTest {
|
||||
assertTrue(source.contains("putExtra(Constants.EXTRA_SERIES_ID, seriesId)"))
|
||||
}
|
||||
|
||||
@Test
|
||||
fun `Community tab source는 Fragment Host pagination owner CTA를 Activity에 연결한다`() {
|
||||
val source = projectFile(
|
||||
"app/src/main/java/kr/co/vividnext/sodalive/v2/creator/channel/CreatorChannelActivity.kt"
|
||||
).readText()
|
||||
val adapter = projectFile(
|
||||
"app/src/main/java/kr/co/vividnext/sodalive/v2/creator/channel/CreatorChannelPagerAdapter.kt"
|
||||
).readText()
|
||||
val fragment = projectFile(
|
||||
"app/src/main/java/kr/co/vividnext/sodalive/v2/creator/channel/community/CreatorChannelCommunityFragment.kt"
|
||||
).readText()
|
||||
|
||||
assertTrue(adapter.contains("CreatorChannelCommunityFragment.newInstance(creatorId)"))
|
||||
assertTrue(source.contains("CreatorChannelCommunityFragment.Host"))
|
||||
assertTrue(
|
||||
source.contains(
|
||||
"import kr.co.vividnext.sodalive.v2.creator.channel.community.CreatorChannelCommunityFragment"
|
||||
)
|
||||
)
|
||||
assertTrue(source.contains("private fun findCommunityFragment(): CreatorChannelCommunityFragment?"))
|
||||
assertTrue(source.contains("findCommunityFragment()?.onCreatorChannelCommunityTabSelected()"))
|
||||
assertTrue(source.contains("if (binding.viewPager.currentItem == CreatorChannelTab.Community.ordinal)"))
|
||||
assertTrue(source.contains("findCommunityFragment()?.onCreatorChannelCommunityScrolledToBottom()"))
|
||||
assertTrue(source.contains("position == CreatorChannelTab.Community.ordinal"))
|
||||
assertTrue(source.contains("override fun onCreatorChannelCommunityContentChanged()"))
|
||||
assertTrue(source.contains("findCommunityFragment()?.onCreatorChannelCommunityOwnerCtaVisibilityChanged("))
|
||||
assertTrue(source.contains("ownerCtaTab == CreatorChannelTab.Community"))
|
||||
assertTrue(source.contains("CreatorChannelTab.Community.ordinal -> CreatorChannelTab.Community"))
|
||||
assertTrue(source.contains("iconResId = R.drawable.ic_new_upload_community_post"))
|
||||
assertTrue(source.contains("textResId = R.string.creator_channel_owner_fab_community"))
|
||||
assertTrue(source.contains("CreatorChannelTab.Community.ordinal -> onOwnerFabCommunityClicked()"))
|
||||
assertTrue(source.contains("private val communityPostModifyLauncher"))
|
||||
assertTrue(source.contains("CreatorCommunityModifyActivity::class.java"))
|
||||
assertTrue(source.contains("putExtra(Constants.EXTRA_COMMUNITY_POST_ID, item.postId)"))
|
||||
assertTrue(source.contains("creatorCommunityRepository.updateCommunityPostFixed("))
|
||||
assertTrue(source.contains("isFixed = !item.isPinned"))
|
||||
assertTrue(source.contains("creatorCommunityRepository.modifyCommunityPost("))
|
||||
assertTrue(source.contains("isActive = false"))
|
||||
assertTrue(source.contains("findCommunityFragment()?.onCreatorChannelCommunityRefreshRequested()"))
|
||||
assertFalse(source.contains("onCreatorChannelCommunityOwnerMoreClicked(postId: Long)"))
|
||||
assertFalse(fragment.contains("onCreatorChannelCommunityOwnerMoreClicked(item.postId)"))
|
||||
assertFalse(source.contains("onClickPin = {},"))
|
||||
assertFalse(source.contains("onClickModify = {},"))
|
||||
assertFalse(source.contains("onClickDelete = {},"))
|
||||
assertTrue(fragment.contains("fun onCreatorChannelCommunityRefreshRequested()"))
|
||||
assertTrue(
|
||||
fragment.contains(
|
||||
"CreatorCommunityMediaPlayerManager(requireContext()) { listAdapter.notifyDataSetChanged() }"
|
||||
)
|
||||
)
|
||||
assertTrue(fragment.contains("mediaPlayerManager?.toggleContent(CreatorCommunityContentItem(item.postId, audioUrl))"))
|
||||
assertTrue(fragment.contains("mediaPlayerManager?.stopContent()"))
|
||||
}
|
||||
|
||||
@Test
|
||||
fun `section adapter source는 활동 지표를 행 단위 resource label로 표시한다`() {
|
||||
val adapter = projectFile(
|
||||
|
||||
Reference in New Issue
Block a user