From 557de11bb3936983954f506aac4488f44c12276a Mon Sep 17 00:00:00 2001 From: klaus Date: Sun, 12 Jul 2026 04:24:47 +0900 Subject: [PATCH] =?UTF-8?q?fix(home):=20=EC=B5=9C=EA=B7=BC=20=EC=86=8C?= =?UTF-8?q?=EC=8B=9D=20=EC=83=81=EC=84=B8=20=EC=9D=B4=EB=8F=99=EC=9D=84=20?= =?UTF-8?q?=EC=97=B0=EA=B2=B0=ED=95=9C=EB=8B=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sodalive/v2/main/home/HomeMainFragment.kt | 9 ++++++- .../HomeMainFragmentLoginGuardSourceTest.kt | 24 +++++++++++++++++++ 2 files changed, 32 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/kr/co/vividnext/sodalive/v2/main/home/HomeMainFragment.kt b/app/src/main/java/kr/co/vividnext/sodalive/v2/main/home/HomeMainFragment.kt index c0e6f861..c4a0d9d5 100644 --- a/app/src/main/java/kr/co/vividnext/sodalive/v2/main/home/HomeMainFragment.kt +++ b/app/src/main/java/kr/co/vividnext/sodalive/v2/main/home/HomeMainFragment.kt @@ -564,7 +564,14 @@ class HomeMainFragment : BaseFragment( private fun onFollowingScheduleClick(item: HomeFollowingScheduleUiItem) = Unit - private fun onFollowingNewsClick(item: HomeFollowingNewsUiItem) = Unit + private fun onFollowingNewsClick(item: HomeFollowingNewsUiItem) { + val community = item as? HomeFollowingNewsUiItem.Community ?: return + val postId = community.postId + if (postId <= 0L) return + ensureMainV2NavigationAllowed { + startActivity(CreatorChannelCommunityDetailActivity.newIntent(requireContext(), postId)) + } + } private fun openFollowingCreatorAll() { ensureMainV2NavigationAllowed { diff --git a/app/src/test/java/kr/co/vividnext/sodalive/v2/main/home/HomeMainFragmentLoginGuardSourceTest.kt b/app/src/test/java/kr/co/vividnext/sodalive/v2/main/home/HomeMainFragmentLoginGuardSourceTest.kt index b722eb57..7c307981 100644 --- a/app/src/test/java/kr/co/vividnext/sodalive/v2/main/home/HomeMainFragmentLoginGuardSourceTest.kt +++ b/app/src/test/java/kr/co/vividnext/sodalive/v2/main/home/HomeMainFragmentLoginGuardSourceTest.kt @@ -53,6 +53,30 @@ class HomeMainFragmentLoginGuardSourceTest { assertFalse(clickSource.contains("EXTRA_COMMUNITY_EXIST_ORDERED")) } + @Test + fun `HomeMainFragment 팔로잉 최근 소식 COMMUNITY_POST는 커뮤니티 상세로 이동한다`() { + val source = projectFile( + "app/src/main/java/kr/co/vividnext/sodalive/v2/main/home/HomeMainFragment.kt" + ).readText() + + val clickSource = source.substringFrom("private fun onFollowingNewsClick(item: HomeFollowingNewsUiItem)") + assertTrue(clickSource.contains("val community = item as? HomeFollowingNewsUiItem.Community ?: return")) + assertTrue(clickSource.contains("val postId = community.postId")) + assertBefore( + clickSource, + "val community = item as? HomeFollowingNewsUiItem.Community ?: return", + "ensureMainV2NavigationAllowed" + ) + assertBefore( + clickSource, + "if (postId <= 0L) return", + "ensureMainV2NavigationAllowed" + ) + assertTrue(clickSource.contains("CreatorChannelCommunityDetailActivity.newIntent(requireContext(), postId)")) + assertFalse(clickSource.contains("CreatorCommunityAllActivity")) + assertFalse(clickSource.contains("EXTRA_COMMUNITY_POST_ID")) + } + @Test fun `HomeMainFragment 팔로잉 탭 선택은 로그인 가드 통과 후 탭을 전환한다`() { val source = projectFile(