Rename ShapeGridInteractor and ShapeGridRepository
Since when applying we set both shape and grid at the same time. It
makes more sense to have one interactor and repo to handle it in one
call.
Test: Refactor. Make sure it builds and runs.
Bug: 362237825
Flag: com.android.systemui.shared.new_customization_picker_ui
Change-Id: I46ea9aa56c251d7eee943bee70be727192ceba89
diff --git a/src/com/android/customization/model/grid/DefaultGridOptionsManager.kt b/src/com/android/customization/model/grid/DefaultShapeGridManager.kt
similarity index 96%
rename from src/com/android/customization/model/grid/DefaultGridOptionsManager.kt
rename to src/com/android/customization/model/grid/DefaultShapeGridManager.kt
index bc862fd..8de5ff2 100644
--- a/src/com/android/customization/model/grid/DefaultGridOptionsManager.kt
+++ b/src/com/android/customization/model/grid/DefaultShapeGridManager.kt
@@ -28,12 +28,12 @@
import kotlinx.coroutines.withContext
@Singleton
-class DefaultGridOptionsManager
+class DefaultShapeGridManager
@Inject
constructor(
@ApplicationContext private val context: Context,
@BackgroundDispatcher private val bgDispatcher: CoroutineDispatcher,
-) : GridOptionsManager2 {
+) : ShapeGridManager {
private val authorityMetadataKey: String =
context.getString(R.string.grid_control_metadata_name)
@@ -59,7 +59,7 @@
context.getString(
com.android.themepicker.R.string.grid_title_pattern,
cols,
- rows
+ rows,
),
isCurrent =
cursor
diff --git a/src/com/android/customization/model/grid/GridOptionsManager2.kt b/src/com/android/customization/model/grid/ShapeGridManager.kt
similarity index 95%
rename from src/com/android/customization/model/grid/GridOptionsManager2.kt
rename to src/com/android/customization/model/grid/ShapeGridManager.kt
index ce8500a..1603ed9 100644
--- a/src/com/android/customization/model/grid/GridOptionsManager2.kt
+++ b/src/com/android/customization/model/grid/ShapeGridManager.kt
@@ -16,7 +16,7 @@
package com.android.customization.model.grid
-interface GridOptionsManager2 {
+interface ShapeGridManager {
suspend fun isGridOptionAvailable(): Boolean
diff --git a/src/com/android/customization/picker/grid/data/repository/GridRepository2.kt b/src/com/android/customization/picker/grid/data/repository/ShapeGridRepository.kt
similarity index 94%
rename from src/com/android/customization/picker/grid/data/repository/GridRepository2.kt
rename to src/com/android/customization/picker/grid/data/repository/ShapeGridRepository.kt
index 8ce4374..9ae4d18 100644
--- a/src/com/android/customization/picker/grid/data/repository/GridRepository2.kt
+++ b/src/com/android/customization/picker/grid/data/repository/ShapeGridRepository.kt
@@ -18,7 +18,7 @@
package com.android.customization.picker.grid.data.repository
import com.android.customization.model.grid.GridOptionModel
-import com.android.customization.model.grid.GridOptionsManager2
+import com.android.customization.model.grid.ShapeGridManager
import com.android.wallpaper.picker.di.modules.BackgroundDispatcher
import javax.inject.Inject
import javax.inject.Singleton
@@ -33,10 +33,10 @@
import kotlinx.coroutines.withContext
@Singleton
-class GridRepository2
+class ShapeGridRepository
@Inject
constructor(
- private val manager: GridOptionsManager2,
+ private val manager: ShapeGridManager,
@BackgroundDispatcher private val bgScope: CoroutineScope,
@BackgroundDispatcher private val bgDispatcher: CoroutineDispatcher,
) {
diff --git a/src/com/android/customization/picker/grid/domain/interactor/GridInteractor2.kt b/src/com/android/customization/picker/grid/domain/interactor/ShapeGridInteractor.kt
similarity index 85%
rename from src/com/android/customization/picker/grid/domain/interactor/GridInteractor2.kt
rename to src/com/android/customization/picker/grid/domain/interactor/ShapeGridInteractor.kt
index 30c87d8..c9c2b0c 100644
--- a/src/com/android/customization/picker/grid/domain/interactor/GridInteractor2.kt
+++ b/src/com/android/customization/picker/grid/domain/interactor/ShapeGridInteractor.kt
@@ -17,16 +17,12 @@
package com.android.customization.picker.grid.domain.interactor
-import com.android.customization.picker.grid.data.repository.GridRepository2
+import com.android.customization.picker.grid.data.repository.ShapeGridRepository
import javax.inject.Inject
import javax.inject.Singleton
@Singleton
-class GridInteractor2
-@Inject
-constructor(
- private val repository: GridRepository2,
-) {
+class ShapeGridInteractor @Inject constructor(private val repository: ShapeGridRepository) {
suspend fun isGridOptionAvailable(): Boolean = repository.isGridOptionAvailable()
val gridOptions = repository.gridOptions
diff --git a/src/com/android/wallpaper/customization/ui/viewmodel/ShapeGridPickerViewModel.kt b/src/com/android/wallpaper/customization/ui/viewmodel/ShapeGridPickerViewModel.kt
index 5a6d36c..7be934d 100644
--- a/src/com/android/wallpaper/customization/ui/viewmodel/ShapeGridPickerViewModel.kt
+++ b/src/com/android/wallpaper/customization/ui/viewmodel/ShapeGridPickerViewModel.kt
@@ -20,7 +20,7 @@
import android.content.res.Resources
import com.android.customization.model.ResourceConstants
import com.android.customization.model.grid.GridOptionModel
-import com.android.customization.picker.grid.domain.interactor.GridInteractor2
+import com.android.customization.picker.grid.domain.interactor.ShapeGridInteractor
import com.android.customization.picker.grid.ui.viewmodel.GridIconViewModel
import com.android.customization.picker.grid.ui.viewmodel.ShapeIconViewModel
import com.android.themepicker.R
@@ -50,7 +50,7 @@
@AssistedInject
constructor(
@ApplicationContext private val context: Context,
- interactor: GridInteractor2,
+ interactor: ShapeGridInteractor,
@Assisted private val viewModelScope: CoroutineScope,
) {
diff --git a/src/com/android/wallpaper/picker/di/modules/ThemePickerSharedAppModule.kt b/src/com/android/wallpaper/picker/di/modules/ThemePickerSharedAppModule.kt
index 22e5fe5..98c881f 100644
--- a/src/com/android/wallpaper/picker/di/modules/ThemePickerSharedAppModule.kt
+++ b/src/com/android/wallpaper/picker/di/modules/ThemePickerSharedAppModule.kt
@@ -16,8 +16,8 @@
package com.android.wallpaper.picker.di.modules
-import com.android.customization.model.grid.DefaultGridOptionsManager
-import com.android.customization.model.grid.GridOptionsManager2
+import com.android.customization.model.grid.DefaultShapeGridManager
+import com.android.customization.model.grid.ShapeGridManager
import com.android.customization.picker.mode.shared.util.DarkModeUtil
import com.android.customization.picker.mode.shared.util.DarkModeUtilImpl
import dagger.Binds
@@ -32,7 +32,7 @@
@Binds
@Singleton
- abstract fun bindGridOptionsManager2(impl: DefaultGridOptionsManager): GridOptionsManager2
+ abstract fun bindGridOptionsManager2(impl: DefaultShapeGridManager): ShapeGridManager
@Binds @Singleton abstract fun bindDarkModeUtil(impl: DarkModeUtilImpl): DarkModeUtil
}
diff --git a/tests/common/src/com/android/customization/model/grid/FakeGridOptionsManager.kt b/tests/common/src/com/android/customization/model/grid/FakeShapeGridManager.kt
similarity index 95%
rename from tests/common/src/com/android/customization/model/grid/FakeGridOptionsManager.kt
rename to tests/common/src/com/android/customization/model/grid/FakeShapeGridManager.kt
index cc23981..a5a94c3 100644
--- a/tests/common/src/com/android/customization/model/grid/FakeGridOptionsManager.kt
+++ b/tests/common/src/com/android/customization/model/grid/FakeShapeGridManager.kt
@@ -20,7 +20,7 @@
import javax.inject.Singleton
@Singleton
-class FakeGridOptionsManager @Inject constructor() : GridOptionsManager2 {
+class FakeShapeGridManager @Inject constructor() : ShapeGridManager {
var isGridOptionAvailable: Boolean = true
diff --git a/tests/common/src/com/android/wallpaper/di/modules/ThemePickerSharedAppTestModule.kt b/tests/common/src/com/android/wallpaper/di/modules/ThemePickerSharedAppTestModule.kt
index 3112f75..4969db4 100644
--- a/tests/common/src/com/android/wallpaper/di/modules/ThemePickerSharedAppTestModule.kt
+++ b/tests/common/src/com/android/wallpaper/di/modules/ThemePickerSharedAppTestModule.kt
@@ -16,8 +16,8 @@
package com.android.wallpaper.di.modules
-import com.android.customization.model.grid.FakeGridOptionsManager
-import com.android.customization.model.grid.GridOptionsManager2
+import com.android.customization.model.grid.FakeShapeGridManager
+import com.android.customization.model.grid.ShapeGridManager
import com.android.customization.picker.mode.shared.util.DarkModeUtil
import com.android.customization.picker.mode.shared.util.FakeDarkModeUtil
import com.android.wallpaper.picker.di.modules.ThemePickerSharedAppModule
@@ -36,7 +36,7 @@
@Binds
@Singleton
- abstract fun bindGridOptionsManager2(impl: FakeGridOptionsManager): GridOptionsManager2
+ abstract fun bindGridOptionsManager2(impl: FakeShapeGridManager): ShapeGridManager
@Binds @Singleton abstract fun bindDarkModeUtil(impl: FakeDarkModeUtil): DarkModeUtil
}
diff --git a/tests/robotests/src/com/android/customization/picker/grid/data/repository/GridRepository2Test.kt b/tests/robotests/src/com/android/customization/picker/grid/data/repository/ShapeGridRepositoryTest.kt
similarity index 84%
rename from tests/robotests/src/com/android/customization/picker/grid/data/repository/GridRepository2Test.kt
rename to tests/robotests/src/com/android/customization/picker/grid/data/repository/ShapeGridRepositoryTest.kt
index 404f08b..61f8743 100644
--- a/tests/robotests/src/com/android/customization/picker/grid/data/repository/GridRepository2Test.kt
+++ b/tests/robotests/src/com/android/customization/picker/grid/data/repository/ShapeGridRepositoryTest.kt
@@ -17,7 +17,7 @@
package com.android.customization.picker.grid.data.repository
import androidx.test.filters.SmallTest
-import com.android.customization.model.grid.FakeGridOptionsManager
+import com.android.customization.model.grid.FakeShapeGridManager
import com.android.wallpaper.picker.di.modules.BackgroundDispatcher
import com.android.wallpaper.testing.collectLastValue
import com.google.common.truth.Truth.assertThat
@@ -42,21 +42,21 @@
@OptIn(ExperimentalCoroutinesApi::class)
@SmallTest
@RunWith(RobolectricTestRunner::class)
-class GridRepository2Test {
+class ShapeGridRepositoryTest {
@get:Rule var hiltRule = HiltAndroidRule(this)
- @Inject lateinit var gridOptionsManager: FakeGridOptionsManager
+ @Inject lateinit var gridOptionsManager: FakeShapeGridManager
@Inject lateinit var testScope: TestScope
@BackgroundDispatcher @Inject lateinit var bgScope: CoroutineScope
@BackgroundDispatcher @Inject lateinit var bgDispatcher: CoroutineDispatcher
- private lateinit var underTest: GridRepository2
+ private lateinit var underTest: ShapeGridRepository
@Before
fun setUp() {
hiltRule.inject()
underTest =
- GridRepository2(
+ ShapeGridRepository(
manager = gridOptionsManager,
bgScope = bgScope,
bgDispatcher = bgDispatcher,
@@ -86,7 +86,7 @@
fun gridOptions_default() =
testScope.runTest {
val gridOptions = collectLastValue(underTest.gridOptions)
- assertThat(gridOptions()).isEqualTo(FakeGridOptionsManager.DEFAULT_GRID_OPTION_LIST)
+ assertThat(gridOptions()).isEqualTo(FakeShapeGridManager.DEFAULT_GRID_OPTION_LIST)
}
@Test
@@ -94,7 +94,7 @@
testScope.runTest {
val selectedGridOption = collectLastValue(underTest.selectedGridOption)
assertThat(selectedGridOption())
- .isEqualTo(FakeGridOptionsManager.DEFAULT_GRID_OPTION_LIST[0])
+ .isEqualTo(FakeShapeGridManager.DEFAULT_GRID_OPTION_LIST[0])
}
@Test
@@ -104,7 +104,7 @@
underTest.applySelectedOption("practical")
assertThat(gridOptions())
.isEqualTo(
- FakeGridOptionsManager.DEFAULT_GRID_OPTION_LIST.map {
+ FakeShapeGridManager.DEFAULT_GRID_OPTION_LIST.map {
it.copy(isCurrent = it.key == "practical")
}
)
@@ -116,8 +116,6 @@
val selectedGridOption = collectLastValue(underTest.selectedGridOption)
underTest.applySelectedOption("practical")
assertThat(selectedGridOption())
- .isEqualTo(
- FakeGridOptionsManager.DEFAULT_GRID_OPTION_LIST[1].copy(isCurrent = true)
- )
+ .isEqualTo(FakeShapeGridManager.DEFAULT_GRID_OPTION_LIST[1].copy(isCurrent = true))
}
}
diff --git a/tests/robotests/src/com/android/customization/picker/grid/domain/interactor/GridInteractor2Test.kt b/tests/robotests/src/com/android/customization/picker/grid/domain/interactor/ShapeGridInteractorTest.kt
similarity index 80%
rename from tests/robotests/src/com/android/customization/picker/grid/domain/interactor/GridInteractor2Test.kt
rename to tests/robotests/src/com/android/customization/picker/grid/domain/interactor/ShapeGridInteractorTest.kt
index bfbe282..51642cb 100644
--- a/tests/robotests/src/com/android/customization/picker/grid/domain/interactor/GridInteractor2Test.kt
+++ b/tests/robotests/src/com/android/customization/picker/grid/domain/interactor/ShapeGridInteractorTest.kt
@@ -17,8 +17,8 @@
package com.android.customization.picker.grid.domain.interactor
import androidx.test.filters.SmallTest
-import com.android.customization.model.grid.FakeGridOptionsManager
-import com.android.customization.picker.grid.data.repository.GridRepository2
+import com.android.customization.model.grid.FakeShapeGridManager
+import com.android.customization.picker.grid.data.repository.ShapeGridRepository
import com.android.wallpaper.testing.collectLastValue
import com.google.common.truth.Truth.assertThat
import dagger.hilt.android.testing.HiltAndroidRule
@@ -40,19 +40,19 @@
@OptIn(ExperimentalCoroutinesApi::class)
@SmallTest
@RunWith(RobolectricTestRunner::class)
-class GridInteractor2Test {
+class ShapeGridInteractorTest {
@get:Rule var hiltRule = HiltAndroidRule(this)
- @Inject lateinit var gridOptionsManager: FakeGridOptionsManager
- @Inject lateinit var repository: GridRepository2
+ @Inject lateinit var gridOptionsManager: FakeShapeGridManager
+ @Inject lateinit var repository: ShapeGridRepository
@Inject lateinit var testScope: TestScope
- private lateinit var underTest: GridInteractor2
+ private lateinit var underTest: ShapeGridInteractor
@Before
fun setUp() {
hiltRule.inject()
- underTest = GridInteractor2(repository)
+ underTest = ShapeGridInteractor(repository)
}
@After
@@ -78,7 +78,7 @@
fun gridOptions_default() =
testScope.runTest {
val gridOptions = collectLastValue(underTest.gridOptions)
- assertThat(gridOptions()).isEqualTo(FakeGridOptionsManager.DEFAULT_GRID_OPTION_LIST)
+ assertThat(gridOptions()).isEqualTo(FakeShapeGridManager.DEFAULT_GRID_OPTION_LIST)
}
@Test
@@ -86,7 +86,7 @@
testScope.runTest {
val selectedGridOption = collectLastValue(underTest.selectedGridOption)
assertThat(selectedGridOption())
- .isEqualTo(FakeGridOptionsManager.DEFAULT_GRID_OPTION_LIST[0])
+ .isEqualTo(FakeShapeGridManager.DEFAULT_GRID_OPTION_LIST[0])
}
@Test
@@ -96,7 +96,7 @@
underTest.applySelectedOption("practical")
assertThat(gridOptions())
.isEqualTo(
- FakeGridOptionsManager.DEFAULT_GRID_OPTION_LIST.map {
+ FakeShapeGridManager.DEFAULT_GRID_OPTION_LIST.map {
it.copy(isCurrent = it.key == "practical")
}
)
@@ -108,8 +108,6 @@
val selectedGridOption = collectLastValue(underTest.selectedGridOption)
underTest.applySelectedOption("practical")
assertThat(selectedGridOption())
- .isEqualTo(
- FakeGridOptionsManager.DEFAULT_GRID_OPTION_LIST[1].copy(isCurrent = true)
- )
+ .isEqualTo(FakeShapeGridManager.DEFAULT_GRID_OPTION_LIST[1].copy(isCurrent = true))
}
}
diff --git a/tests/robotests/src/com/android/wallpaper/customization/ui/viewmodel/ShapeGridPickerViewModelTest.kt b/tests/robotests/src/com/android/wallpaper/customization/ui/viewmodel/ShapeGridPickerViewModelTest.kt
index a07e63e..dcf658e 100644
--- a/tests/robotests/src/com/android/wallpaper/customization/ui/viewmodel/ShapeGridPickerViewModelTest.kt
+++ b/tests/robotests/src/com/android/wallpaper/customization/ui/viewmodel/ShapeGridPickerViewModelTest.kt
@@ -21,8 +21,8 @@
import androidx.test.core.app.ApplicationProvider
import androidx.test.filters.SmallTest
import com.android.customization.model.ResourceConstants
-import com.android.customization.model.grid.FakeGridOptionsManager
-import com.android.customization.picker.grid.domain.interactor.GridInteractor2
+import com.android.customization.model.grid.FakeShapeGridManager
+import com.android.customization.picker.grid.domain.interactor.ShapeGridInteractor
import com.android.customization.picker.grid.ui.viewmodel.GridIconViewModel
import com.android.customization.picker.grid.ui.viewmodel.ShapeIconViewModel
import com.android.wallpaper.picker.common.text.ui.viewmodel.Text
@@ -53,8 +53,8 @@
@get:Rule var hiltRule = HiltAndroidRule(this)
@Inject lateinit var testScope: TestScope
- @Inject lateinit var gridOptionsManager: FakeGridOptionsManager
- @Inject lateinit var interactor: GridInteractor2
+ @Inject lateinit var gridOptionsManager: FakeShapeGridManager
+ @Inject lateinit var interactor: ShapeGridInteractor
@Inject @ApplicationContext lateinit var appContext: Context
private val iconShapePath =