diff --git a/app/src/main/java/kr/co/vividnext/sodalive/v2/main/home/ui/HomeRecentDebutCreatorAdapter.kt b/app/src/main/java/kr/co/vividnext/sodalive/v2/main/home/ui/HomeRecentDebutCreatorAdapter.kt index 28cc5763..66a64c5f 100644 --- a/app/src/main/java/kr/co/vividnext/sodalive/v2/main/home/ui/HomeRecentDebutCreatorAdapter.kt +++ b/app/src/main/java/kr/co/vividnext/sodalive/v2/main/home/ui/HomeRecentDebutCreatorAdapter.kt @@ -20,7 +20,7 @@ class HomeRecentDebutCreatorAdapter : RecyclerView.Adapter + + + + diff --git a/app/src/main/res/drawable/bg_home_recent_debut_dim_gradient.xml b/app/src/main/res/drawable/bg_home_recent_debut_dim_gradient.xml new file mode 100644 index 00000000..4d9744e9 --- /dev/null +++ b/app/src/main/res/drawable/bg_home_recent_debut_dim_gradient.xml @@ -0,0 +1,10 @@ + + + + + diff --git a/app/src/main/res/layout/item_home_recent_debut_creator.xml b/app/src/main/res/layout/item_home_recent_debut_creator.xml index bffd713e..922bccc9 100644 --- a/app/src/main/res/layout/item_home_recent_debut_creator.xml +++ b/app/src/main/res/layout/item_home_recent_debut_creator.xml @@ -1,30 +1,38 @@ - + android:layout_width="205dp" + android:layout_height="259dp" + android:background="@drawable/bg_home_recent_debut_card" + android:outlineProvider="background"> + + - + diff --git a/app/src/test/java/kr/co/vividnext/sodalive/v2/main/home/HomeMainFragmentLayoutTest.kt b/app/src/test/java/kr/co/vividnext/sodalive/v2/main/home/HomeMainFragmentLayoutTest.kt index 5d13822b..396afd96 100644 --- a/app/src/test/java/kr/co/vividnext/sodalive/v2/main/home/HomeMainFragmentLayoutTest.kt +++ b/app/src/test/java/kr/co/vividnext/sodalive/v2/main/home/HomeMainFragmentLayoutTest.kt @@ -3,6 +3,7 @@ package kr.co.vividnext.sodalive.v2.main.home import android.app.Application import android.content.Context import android.graphics.drawable.ColorDrawable +import android.view.Gravity import android.view.LayoutInflater import android.view.View import android.view.ViewGroup @@ -16,6 +17,7 @@ import androidx.test.core.app.ApplicationProvider import kr.co.vividnext.sodalive.R import kr.co.vividnext.sodalive.v2.main.home.model.HomeRecommendationLiveUiModel import kr.co.vividnext.sodalive.v2.main.home.ui.HomeLiveAdapter +import kr.co.vividnext.sodalive.v2.main.home.ui.HomeRecentDebutCreatorAdapter import kr.co.vividnext.sodalive.v2.widget.TextTabBarView import kr.co.vividnext.sodalive.v2.widget.banner.BannerView import org.junit.Assert.assertEquals @@ -116,6 +118,34 @@ class HomeMainFragmentLayoutTest { assertEquals(52.dpToPx(), profileImage.layoutParams.height) } + @Test + fun `recent debut creator item matches figma card dimensions`() { + val recentDebut = inflateViewWithParent(R.layout.item_home_recent_debut_creator) + val profileImage = recentDebut.findViewById(R.id.iv_home_recent_debut_creator_profile) + val nicknameText = recentDebut.findViewById(R.id.tv_home_recent_debut_creator_nickname) + + assertEquals(205.dpToPx(), recentDebut.layoutParams.width) + assertEquals(259.dpToPx(), recentDebut.layoutParams.height) + assertEquals(205.dpToPx(), profileImage.layoutParams.width) + assertEquals(259.dpToPx(), profileImage.layoutParams.height) + assertEquals(24f, nicknameText.textSize / nicknameText.resources.displayMetrics.scaledDensity) + assertEquals(Gravity.CENTER, nicknameText.gravity) + } + + @Test + fun `home recent debut section matches figma list spacing`() { + val root = inflateView(R.layout.fragment_v2_main_home) + val recentDebutList = root.findViewById(R.id.rv_home_recent_debut_creators) + val context = ApplicationProvider.getApplicationContext() + val parent = RecyclerView(context) + parent.layoutManager = LinearLayoutManager(context, RecyclerView.HORIZONTAL, false) + val viewHolder = HomeRecentDebutCreatorAdapter().onCreateViewHolder(parent, 0) + val layoutParams = viewHolder.itemView.layoutParams as ViewGroup.MarginLayoutParams + + assertEquals(14.dpToPx(), recentDebutList.paddingStart) + assertEquals(4.dpToPx(), layoutParams.marginEnd) + } + @Test fun `popular community section is hidden until phase7 binding is implemented`() { val root = inflateView(R.layout.fragment_v2_main_home) @@ -125,12 +155,12 @@ class HomeMainFragmentLayoutTest { } @Test - fun `home live section matches figma row dimensions`() { + fun `home live section height follows its items`() { val root = inflateView(R.layout.fragment_v2_main_home) val liveList = root.findViewById(R.id.rv_home_lives) assertNotNull(liveList) - assertEquals(102.dpToPx(), liveList.layoutParams.height) + assertEquals(ViewGroup.LayoutParams.WRAP_CONTENT, liveList.layoutParams.height) assertEquals(20.dpToPx(), liveList.paddingStart) }