diff --git a/app/build.gradle.kts b/app/build.gradle.kts
index 217544884..6c0225b41 100644
--- a/app/build.gradle.kts
+++ b/app/build.gradle.kts
@@ -124,12 +124,12 @@ dependencies {
testDemoImplementation(testFixtures(projects.core.data))
androidTestImplementation(projects.core.testing)
- androidTestImplementation(projects.core.datastoreTest)
androidTestImplementation(libs.androidx.test.espresso.core)
androidTestImplementation(libs.androidx.navigation.testing)
androidTestImplementation(libs.androidx.compose.ui.test)
androidTestImplementation(libs.hilt.android.testing)
androidTestImplementation(testFixtures(projects.core.data))
+ androidTestImplementation(testFixtures(projects.core.datastore))
baselineProfile(projects.benchmarks)
}
diff --git a/core/data/build.gradle.kts b/core/data/build.gradle.kts
index 747a7ad90..c74546fcc 100644
--- a/core/data/build.gradle.kts
+++ b/core/data/build.gradle.kts
@@ -42,8 +42,8 @@ dependencies {
testImplementation(libs.kotlinx.coroutines.test)
testImplementation(libs.kotlinx.serialization.json)
- testImplementation(projects.core.datastoreTest)
testImplementation(projects.core.testing)
+ testImplementation(testFixtures(projects.core.datastore))
kspTestFixtures(libs.hilt.compiler)
testFixturesImplementation(libs.hilt.android.testing)
diff --git a/core/data/src/test/kotlin/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstNewsRepositoryTest.kt b/core/data/src/test/kotlin/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstNewsRepositoryTest.kt
index 47c3996c4..358836610 100644
--- a/core/data/src/test/kotlin/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstNewsRepositoryTest.kt
+++ b/core/data/src/test/kotlin/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstNewsRepositoryTest.kt
@@ -32,7 +32,7 @@ import com.google.samples.apps.nowinandroid.core.database.model.PopulatedNewsRes
import com.google.samples.apps.nowinandroid.core.database.model.TopicEntity
import com.google.samples.apps.nowinandroid.core.database.model.asExternalModel
import com.google.samples.apps.nowinandroid.core.datastore.NiaPreferencesDataSource
-import com.google.samples.apps.nowinandroid.core.datastore.test.testUserPreferencesDataStore
+import com.google.samples.apps.nowinandroid.core.datastore.testUserPreferencesDataStore
import com.google.samples.apps.nowinandroid.core.model.data.NewsResource
import com.google.samples.apps.nowinandroid.core.model.data.Topic
import com.google.samples.apps.nowinandroid.core.network.model.NetworkChangeList
diff --git a/core/data/src/test/kotlin/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstTopicsRepositoryTest.kt b/core/data/src/test/kotlin/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstTopicsRepositoryTest.kt
index 3bd314eae..3ba095b81 100644
--- a/core/data/src/test/kotlin/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstTopicsRepositoryTest.kt
+++ b/core/data/src/test/kotlin/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstTopicsRepositoryTest.kt
@@ -25,7 +25,7 @@ import com.google.samples.apps.nowinandroid.core.database.dao.TopicDao
import com.google.samples.apps.nowinandroid.core.database.model.TopicEntity
import com.google.samples.apps.nowinandroid.core.database.model.asExternalModel
import com.google.samples.apps.nowinandroid.core.datastore.NiaPreferencesDataSource
-import com.google.samples.apps.nowinandroid.core.datastore.test.testUserPreferencesDataStore
+import com.google.samples.apps.nowinandroid.core.datastore.testUserPreferencesDataStore
import com.google.samples.apps.nowinandroid.core.model.data.Topic
import com.google.samples.apps.nowinandroid.core.network.model.NetworkTopic
import kotlinx.coroutines.flow.first
diff --git a/core/data/src/test/kotlin/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstUserDataRepositoryTest.kt b/core/data/src/test/kotlin/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstUserDataRepositoryTest.kt
index 422e2cfb7..7f6deedeb 100644
--- a/core/data/src/test/kotlin/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstUserDataRepositoryTest.kt
+++ b/core/data/src/test/kotlin/com/google/samples/apps/nowinandroid/core/data/repository/OfflineFirstUserDataRepositoryTest.kt
@@ -18,7 +18,7 @@ package com.google.samples.apps.nowinandroid.core.data.repository
import com.google.samples.apps.nowinandroid.core.analytics.NoOpAnalyticsHelper
import com.google.samples.apps.nowinandroid.core.datastore.NiaPreferencesDataSource
-import com.google.samples.apps.nowinandroid.core.datastore.test.testUserPreferencesDataStore
+import com.google.samples.apps.nowinandroid.core.datastore.testUserPreferencesDataStore
import com.google.samples.apps.nowinandroid.core.model.data.DarkThemeConfig
import com.google.samples.apps.nowinandroid.core.model.data.ThemeBrand
import com.google.samples.apps.nowinandroid.core.model.data.UserData
diff --git a/core/datastore-test/.gitignore b/core/datastore-test/.gitignore
deleted file mode 100644
index 42afabfd2..000000000
--- a/core/datastore-test/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-/build
\ No newline at end of file
diff --git a/core/datastore-test/README.md b/core/datastore-test/README.md
deleted file mode 100644
index 99cf13f1f..000000000
--- a/core/datastore-test/README.md
+++ /dev/null
@@ -1,3 +0,0 @@
-# :core:datastore-test module
-## Dependency graph
-
diff --git a/core/datastore-test/build.gradle.kts b/core/datastore-test/build.gradle.kts
deleted file mode 100644
index 53e5e2c0c..000000000
--- a/core/datastore-test/build.gradle.kts
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Copyright 2022 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.
- */
-plugins {
- alias(libs.plugins.nowinandroid.android.library)
- alias(libs.plugins.nowinandroid.android.hilt)
-}
-
-android {
- namespace = "com.google.samples.apps.nowinandroid.core.datastore.test"
-}
-
-dependencies {
- implementation(libs.hilt.android.testing)
- implementation(projects.core.common)
- implementation(projects.core.datastore)
-}
diff --git a/core/datastore-test/src/main/AndroidManifest.xml b/core/datastore-test/src/main/AndroidManifest.xml
deleted file mode 100644
index 51d0cfc2e..000000000
--- a/core/datastore-test/src/main/AndroidManifest.xml
+++ /dev/null
@@ -1,17 +0,0 @@
-
-
-
\ No newline at end of file
diff --git a/core/datastore/build.gradle.kts b/core/datastore/build.gradle.kts
index 34ea5ee78..3059b6a5b 100644
--- a/core/datastore/build.gradle.kts
+++ b/core/datastore/build.gradle.kts
@@ -30,6 +30,7 @@ android {
isReturnDefaultValues = true
}
}
+ testFixtures.enable = true
}
dependencies {
@@ -39,6 +40,10 @@ dependencies {
implementation(projects.core.common)
- testImplementation(projects.core.datastoreTest)
testImplementation(libs.kotlinx.coroutines.test)
+
+ kspTestFixtures(libs.hilt.compiler)
+ testFixturesImplementation(libs.hilt.android.testing)
+ testFixturesImplementation(projects.core.common)
+ testFixturesImplementation(projects.core.datastore)
}
diff --git a/core/datastore/src/test/kotlin/com/google/samples/apps/nowinandroid/core/datastore/NiaPreferencesDataSourceTest.kt b/core/datastore/src/test/kotlin/com/google/samples/apps/nowinandroid/core/datastore/NiaPreferencesDataSourceTest.kt
index 433812808..db8785694 100644
--- a/core/datastore/src/test/kotlin/com/google/samples/apps/nowinandroid/core/datastore/NiaPreferencesDataSourceTest.kt
+++ b/core/datastore/src/test/kotlin/com/google/samples/apps/nowinandroid/core/datastore/NiaPreferencesDataSourceTest.kt
@@ -16,7 +16,6 @@
package com.google.samples.apps.nowinandroid.core.datastore
-import com.google.samples.apps.nowinandroid.core.datastore.test.testUserPreferencesDataStore
import kotlinx.coroutines.flow.first
import kotlinx.coroutines.test.TestScope
import kotlinx.coroutines.test.UnconfinedTestDispatcher
diff --git a/core/datastore-test/src/main/kotlin/com/google/samples/apps/nowinandroid/core/datastore/test/TestDataStoreModule.kt b/core/datastore/src/testFixtures/kotlin/com/google/samples/apps/nowinandroid/core/datastore/TestDataStoreModule.kt
similarity index 89%
rename from core/datastore-test/src/main/kotlin/com/google/samples/apps/nowinandroid/core/datastore/test/TestDataStoreModule.kt
rename to core/datastore/src/testFixtures/kotlin/com/google/samples/apps/nowinandroid/core/datastore/TestDataStoreModule.kt
index 295b2978a..fd069de5d 100644
--- a/core/datastore-test/src/main/kotlin/com/google/samples/apps/nowinandroid/core/datastore/test/TestDataStoreModule.kt
+++ b/core/datastore/src/testFixtures/kotlin/com/google/samples/apps/nowinandroid/core/datastore/TestDataStoreModule.kt
@@ -14,12 +14,10 @@
* limitations under the License.
*/
-package com.google.samples.apps.nowinandroid.core.datastore.test
+package com.google.samples.apps.nowinandroid.core.datastore
import androidx.datastore.core.DataStore
import androidx.datastore.core.DataStoreFactory
-import com.google.samples.apps.nowinandroid.core.datastore.UserPreferences
-import com.google.samples.apps.nowinandroid.core.datastore.UserPreferencesSerializer
import com.google.samples.apps.nowinandroid.core.datastore.di.DataStoreModule
import com.google.samples.apps.nowinandroid.core.network.di.ApplicationScope
import dagger.Module
diff --git a/docs/images/graphs/dep_graph_core_datastore_test.svg b/docs/images/graphs/dep_graph_core_datastore_test.svg
deleted file mode 100644
index e42e5e795..000000000
--- a/docs/images/graphs/dep_graph_core_datastore_test.svg
+++ /dev/null
@@ -1,58 +0,0 @@
-
-
-
diff --git a/settings.gradle.kts b/settings.gradle.kts
index 29d51c90f..0fcfee065 100644
--- a/settings.gradle.kts
+++ b/settings.gradle.kts
@@ -42,7 +42,6 @@ include(":core:data")
include(":core:database")
include(":core:datastore")
include(":core:datastore-proto")
-include(":core:datastore-test")
include(":core:designsystem")
include(":core:domain")
include(":core:model")