@@ -21,6 +21,7 @@ import android.net.Uri
2121import androidx.test.core.app.ApplicationProvider
2222import com.android.developers.testing.data.TestFileProvider
2323import com.android.developers.testing.data.bitmapSample
24+ import com.android.developers.testing.network.TestRemoteConfigDataSource
2425import com.android.developers.testing.repository.FakeImageGenerationRepository
2526import com.android.developers.testing.util.FakeComposableBitmapRenderer
2627import com.android.developers.testing.util.MainDispatcherRule
@@ -52,13 +53,16 @@ class CustomizeViewModelTest {
5253
5354 @Before
5455 fun setup () {
56+ val remoteConfigDataSource = TestRemoteConfigDataSource (true )
57+ remoteConfigDataSource.backgroundVibeEnabled = false
5558 viewModel = CustomizeExportViewModel (
5659 fakeUri,
5760 originalFakeUri,
5861 FakeImageGenerationRepository (),
5962 composableBitmapRenderer = FakeComposableBitmapRenderer (),
6063 application = ApplicationProvider .getApplicationContext(),
6164 localFileProvider = TestFileProvider (),
65+ remoteConfigDataSource = remoteConfigDataSource,
6266 )
6367 }
6468
@@ -82,13 +86,16 @@ class CustomizeViewModelTest {
8286
8387 @Test
8488 fun setArgumentsWithPrompt () = runTest {
89+ val remoteConfigDataSource = TestRemoteConfigDataSource (true )
90+ remoteConfigDataSource.backgroundVibeEnabled = false
8591 val viewModel = CustomizeExportViewModel (
8692 fakeUri,
8793 null ,
8894 FakeImageGenerationRepository (),
8995 composableBitmapRenderer = FakeComposableBitmapRenderer (),
9096 application = ApplicationProvider .getApplicationContext(),
9197 localFileProvider = TestFileProvider (),
98+ remoteConfigDataSource = remoteConfigDataSource,
9299 )
93100 assertEquals(
94101 CustomizeExportState (
@@ -141,6 +148,7 @@ class CustomizeViewModelTest {
141148 composableBitmapRenderer = FakeComposableBitmapRenderer (),
142149 application = ApplicationProvider .getApplicationContext(),
143150 localFileProvider = TestFileProvider (),
151+ remoteConfigDataSource = TestRemoteConfigDataSource (false ),
144152 )
145153 val values = mutableListOf<CustomizeExportState >()
146154 // Launch collector on the backgroundScope directly to use runTest's scheduler
@@ -190,4 +198,23 @@ class CustomizeViewModelTest {
190198 assertTrue { ! values[values.lastIndex].showImageEditProgress }
191199 assertNull(values.last().exportImageCanvas.imageWithEdit)
192200 }
201+
202+ @Test
203+ fun remoteConfigDataSource_BackgroundVibesFeatureEnabled_ContainsVibeList () = runTest {
204+ val remoteConfigDataSource = TestRemoteConfigDataSource (true )
205+ remoteConfigDataSource.backgroundVibeEnabled = true
206+ val viewModel = CustomizeExportViewModel (
207+ fakeUri,
208+ null ,
209+ FakeImageGenerationRepository (),
210+ composableBitmapRenderer = FakeComposableBitmapRenderer (),
211+ application = ApplicationProvider .getApplicationContext(),
212+ localFileProvider = TestFileProvider (),
213+ remoteConfigDataSource = remoteConfigDataSource,
214+ )
215+ val state = viewModel.state.value.toolState[CustomizeTool .Background ] as BackgroundToolState
216+
217+ assertTrue(state.options.size > 5 )
218+ assertTrue(state.options.any { it.aiBackground })
219+ }
193220}
0 commit comments