Add corner rounding to TaskThumbnailView

Fix: 334826840
Test: TaskThumbnailViewModelTest
Flag: ACONFIG com.android.launcher3.enable_refactor_task_thumbnail DEVELOPMENT
Change-Id: Iba4d49d43abc09363f61186c3fcc07f2281b7006
This commit is contained in:
Uwais Ashraf
2024-05-03 18:29:59 +00:00
parent 906df388ef
commit 9533b0fb27
7 changed files with 188 additions and 42 deletions

View File

@@ -17,38 +17,63 @@
package com.android.quickstep.task.thumbnail
import androidx.test.ext.junit.runners.AndroidJUnit4
import com.android.quickstep.recents.viewmodel.RecentsViewData
import com.android.quickstep.task.viewmodel.TaskViewData
import com.android.systemui.shared.recents.model.Task
import com.google.common.truth.Truth.assertThat
import kotlinx.coroutines.flow.first
import kotlinx.coroutines.test.runTest
import org.junit.Test
import org.junit.runner.RunWith
@RunWith(AndroidJUnit4::class)
class TaskThumbnailViewModelTest {
private val systemUnderTest = TaskThumbnailViewModel()
private val recentsViewData = RecentsViewData()
private val taskViewData = TaskViewData()
private val systemUnderTest = TaskThumbnailViewModel(recentsViewData, taskViewData)
@Test
fun initialStateIsUninitialized() {
assertThat(systemUnderTest.uiState.value).isEqualTo(TaskThumbnailUiState.Uninitialized)
fun initialStateIsUninitialized() = runTest {
assertThat(systemUnderTest.uiState.first()).isEqualTo(TaskThumbnailUiState.Uninitialized)
}
@Test
fun bindRunningTask_thenStateIs_LiveTile() {
fun bindRunningTask_thenStateIs_LiveTile() = runTest {
val taskThumbnail = TaskThumbnail(Task(), isRunning = true)
systemUnderTest.bind(taskThumbnail)
assertThat(systemUnderTest.uiState.value).isEqualTo(TaskThumbnailUiState.LiveTile)
assertThat(systemUnderTest.uiState.first()).isEqualTo(TaskThumbnailUiState.LiveTile)
}
@Test
fun bindRunningTaskThenStoppedTask_thenStateIs_Uninitialized() {
fun setRecentsFullscreenProgress_thenProgressIsPassedThrough() = runTest {
recentsViewData.fullscreenProgress.value = 0.5f
assertThat(systemUnderTest.recentsFullscreenProgress.first()).isEqualTo(0.5f)
recentsViewData.fullscreenProgress.value = 0.6f
assertThat(systemUnderTest.recentsFullscreenProgress.first()).isEqualTo(0.6f)
}
@Test
fun setAncestorScales_thenScaleIsCalculated() = runTest {
recentsViewData.scale.value = 0.5f
taskViewData.scale.value = 0.6f
assertThat(systemUnderTest.inheritedScale.first()).isEqualTo(0.3f)
}
@Test
fun bindRunningTaskThenStoppedTask_thenStateIs_Uninitialized() = runTest {
// TODO(b/334825222): Change the expectation here when snapshot state is implemented
val task = Task()
val runningTask = TaskThumbnail(task, isRunning = true)
val stoppedTask = TaskThumbnail(task, isRunning = false)
systemUnderTest.bind(runningTask)
assertThat(systemUnderTest.uiState.value).isEqualTo(TaskThumbnailUiState.LiveTile)
assertThat(systemUnderTest.uiState.first()).isEqualTo(TaskThumbnailUiState.LiveTile)
systemUnderTest.bind(stoppedTask)
assertThat(systemUnderTest.uiState.value).isEqualTo(TaskThumbnailUiState.Uninitialized)
assertThat(systemUnderTest.uiState.first()).isEqualTo(TaskThumbnailUiState.Uninitialized)
}
}