From 5ba50fc3250b0baf368fe51a43dec4a130b6748e Mon Sep 17 00:00:00 2001 From: lihenggui Date: Fri, 28 Jun 2024 14:28:33 -0700 Subject: [PATCH] Temp remove implementations for viewmodels --- .../feature/bookmarks/di/BookmarkComponent.kt | 25 ------------------- .../navigation/BookmarksNavigation.kt | 8 +++--- .../bookmarks/BookmarksViewModelTest.kt | 13 ++++------ 3 files changed, 8 insertions(+), 38 deletions(-) delete mode 100644 feature/bookmarks/src/commonMain/kotlin/com/google/samples/apps/nowinandroid/feature/bookmarks/di/BookmarkComponent.kt diff --git a/feature/bookmarks/src/commonMain/kotlin/com/google/samples/apps/nowinandroid/feature/bookmarks/di/BookmarkComponent.kt b/feature/bookmarks/src/commonMain/kotlin/com/google/samples/apps/nowinandroid/feature/bookmarks/di/BookmarkComponent.kt deleted file mode 100644 index 68853dc22..000000000 --- a/feature/bookmarks/src/commonMain/kotlin/com/google/samples/apps/nowinandroid/feature/bookmarks/di/BookmarkComponent.kt +++ /dev/null @@ -1,25 +0,0 @@ -/* - * Copyright 2024 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * https://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.google.samples.apps.nowinandroid.feature.bookmarks.di - -import com.google.samples.apps.nowinandroid.feature.bookmarks.BookmarksViewModel -import me.tatarka.inject.annotations.Component - -@Component -abstract class BookmarkComponent { - abstract val viewModel: BookmarksViewModel -} diff --git a/feature/bookmarks/src/commonMain/kotlin/com/google/samples/apps/nowinandroid/feature/bookmarks/navigation/BookmarksNavigation.kt b/feature/bookmarks/src/commonMain/kotlin/com/google/samples/apps/nowinandroid/feature/bookmarks/navigation/BookmarksNavigation.kt index 64cf40df7..76abd0019 100644 --- a/feature/bookmarks/src/commonMain/kotlin/com/google/samples/apps/nowinandroid/feature/bookmarks/navigation/BookmarksNavigation.kt +++ b/feature/bookmarks/src/commonMain/kotlin/com/google/samples/apps/nowinandroid/feature/bookmarks/navigation/BookmarksNavigation.kt @@ -21,7 +21,6 @@ import androidx.navigation.NavGraphBuilder import androidx.navigation.NavOptions import androidx.navigation.compose.composable import com.google.samples.apps.nowinandroid.feature.bookmarks.BookmarksRoute -import com.google.samples.apps.nowinandroid.feature.bookmarks.di.BookmarkComponent const val BOOKMARKS_ROUTE = "bookmarks_route" @@ -31,8 +30,7 @@ fun NavGraphBuilder.bookmarksScreen( onTopicClick: (String) -> Unit, onShowSnackbar: suspend (String, String?) -> Boolean, ) { - val viewModel = BookmarkComponent::class.create().viewModel - composable(route = BOOKMARKS_ROUTE) { - BookmarksRoute(onTopicClick, onShowSnackbar, viewModel) - } +// composable(route = BOOKMARKS_ROUTE) { +// BookmarksRoute(onTopicClick, onShowSnackbar, viewModel) +// } } diff --git a/feature/bookmarks/src/commonTest/kotlin/com/google/samples/apps/nowinandroid/feature/bookmarks/BookmarksViewModelTest.kt b/feature/bookmarks/src/commonTest/kotlin/com/google/samples/apps/nowinandroid/feature/bookmarks/BookmarksViewModelTest.kt index 037e9db64..9b8010625 100644 --- a/feature/bookmarks/src/commonTest/kotlin/com/google/samples/apps/nowinandroid/feature/bookmarks/BookmarksViewModelTest.kt +++ b/feature/bookmarks/src/commonTest/kotlin/com/google/samples/apps/nowinandroid/feature/bookmarks/BookmarksViewModelTest.kt @@ -20,16 +20,15 @@ import com.google.samples.apps.nowinandroid.core.data.repository.CompositeUserNe import com.google.samples.apps.nowinandroid.core.testing.data.newsResourcesTestData import com.google.samples.apps.nowinandroid.core.testing.repository.TestNewsRepository import com.google.samples.apps.nowinandroid.core.testing.repository.TestUserDataRepository -import com.google.samples.apps.nowinandroid.core.testing.util.MainDispatcherRule import com.google.samples.apps.nowinandroid.core.ui.NewsFeedUiState.Loading import com.google.samples.apps.nowinandroid.core.ui.NewsFeedUiState.Success +import kotlinx.coroutines.ExperimentalCoroutinesApi import kotlinx.coroutines.flow.collect import kotlinx.coroutines.launch import kotlinx.coroutines.test.UnconfinedTestDispatcher import kotlinx.coroutines.test.runTest -import org.junit.Before -import org.junit.Rule -import org.junit.Test +import kotlin.test.BeforeTest +import kotlin.test.Test import kotlin.test.assertEquals import kotlin.test.assertIs @@ -38,9 +37,6 @@ import kotlin.test.assertIs * https://developer.android.com/kotlin/flow/test#statein */ class BookmarksViewModelTest { - @get:Rule - val dispatcherRule = MainDispatcherRule() - private val userDataRepository = TestUserDataRepository() private val newsRepository = TestNewsRepository() private val userNewsResourceRepository = CompositeUserNewsResourceRepository( @@ -49,7 +45,7 @@ class BookmarksViewModelTest { ) private lateinit var viewModel: BookmarksViewModel - @Before + @BeforeTest fun setup() { viewModel = BookmarksViewModel( userDataRepository = userDataRepository, @@ -75,6 +71,7 @@ class BookmarksViewModelTest { collectJob.cancel() } + @OptIn(ExperimentalCoroutinesApi::class) @Test fun oneBookmark_whenRemoving_removesFromFeed() = runTest { val collectJob = launch(UnconfinedTestDispatcher()) { viewModel.feedUiState.collect() }