Rename test methods and classes.

pull/1837/head
Don Turner 8 months ago
parent de4998f1d6
commit f0efb4697d

@ -1,5 +1,5 @@
/* /*
* Copyright 2024 The Android Open Source Project * Copyright 2025 The Android Open Source Project
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -14,32 +14,39 @@
* limitations under the License. * limitations under the License.
*/ */
package com.google.samples.apps.nowinandroid.core.database package com.google.samples.apps.nowinandroid.core.database.dao
import android.content.Context import android.content.Context
import androidx.room.Room import androidx.room.Room
import androidx.test.core.app.ApplicationProvider import androidx.test.core.app.ApplicationProvider
import com.google.samples.apps.nowinandroid.core.database.dao.NewsResourceDao import com.google.samples.apps.nowinandroid.core.database.NiaDatabase
import com.google.samples.apps.nowinandroid.core.database.dao.TopicDao
import org.junit.After import org.junit.After
import org.junit.Before import org.junit.Before
abstract class TestDatabaseSetup {
protected lateinit var newsResourceDao: NewsResourceDao internal abstract class DatabaseTest {
protected lateinit var topicDao: TopicDao
private lateinit var db: NiaDatabase private lateinit var db : NiaDatabase
protected lateinit var newsResourceDao : NewsResourceDao
protected lateinit var topicDao : TopicDao
@Before @Before
fun createDb() { fun setup() {
val context = ApplicationProvider.getApplicationContext<Context>() db = run {
db = Room.inMemoryDatabaseBuilder( val context = ApplicationProvider.getApplicationContext<Context>()
context, Room.inMemoryDatabaseBuilder(
NiaDatabase::class.java, context,
).build() NiaDatabase::class.java,
).build()
}
newsResourceDao = db.newsResourceDao() newsResourceDao = db.newsResourceDao()
topicDao = db.topicDao() topicDao = db.topicDao()
} }
@After @After
fun closeDb() = db.close() fun closeDb(){
db.close()
}
} }

@ -16,7 +16,6 @@
package com.google.samples.apps.nowinandroid.core.database.dao package com.google.samples.apps.nowinandroid.core.database.dao
import com.google.samples.apps.nowinandroid.core.database.TestDatabaseSetup
import com.google.samples.apps.nowinandroid.core.database.model.NewsResourceEntity import com.google.samples.apps.nowinandroid.core.database.model.NewsResourceEntity
import com.google.samples.apps.nowinandroid.core.database.model.NewsResourceTopicCrossRef import com.google.samples.apps.nowinandroid.core.database.model.NewsResourceTopicCrossRef
import com.google.samples.apps.nowinandroid.core.database.model.TopicEntity import com.google.samples.apps.nowinandroid.core.database.model.TopicEntity
@ -27,9 +26,10 @@ import kotlinx.datetime.Instant
import org.junit.Test import org.junit.Test
import kotlin.test.assertEquals import kotlin.test.assertEquals
class NewsResourceDaoTest : TestDatabaseSetup() { internal class NewsResourceDaoTest : DatabaseTest() {
@Test @Test
fun newsResourceDao_fetches_items_by_descending_publish_date() = runTest { fun getNewsResources_allEntries_areOrderedByPublishDateDesc() = runTest {
val newsResourceEntities = listOf( val newsResourceEntities = listOf(
testNewsResource( testNewsResource(
id = "0", id = "0",
@ -64,7 +64,7 @@ class NewsResourceDaoTest : TestDatabaseSetup() {
} }
@Test @Test
fun newsResourceDao_filters_items_by_news_ids_by_descending_publish_date() = runTest { fun getNewsResources_filteredById_areOrderedByDescendingPublishDate() = runTest {
val newsResourceEntities = listOf( val newsResourceEntities = listOf(
testNewsResource( testNewsResource(
id = "0", id = "0",
@ -102,7 +102,7 @@ class NewsResourceDaoTest : TestDatabaseSetup() {
} }
@Test @Test
fun newsResourceDao_filters_items_by_topic_ids_by_descending_publish_date() = runTest { fun getNewsResources_filteredByTopicId_areOrderedByDescendingPublishDate() = runTest {
val topicEntities = listOf( val topicEntities = listOf(
testTopicEntity( testTopicEntity(
id = "1", id = "1",
@ -162,7 +162,7 @@ class NewsResourceDaoTest : TestDatabaseSetup() {
} }
@Test @Test
fun newsResourceDao_filters_items_by_news_and_topic_ids_by_descending_publish_date() = runTest { fun getNewsResources_filteredByIdAndTopicId_areOrderedByDescendingPublishDate() = runTest {
val topicEntities = listOf( val topicEntities = listOf(
testTopicEntity( testTopicEntity(
id = "1", id = "1",
@ -224,7 +224,7 @@ class NewsResourceDaoTest : TestDatabaseSetup() {
} }
@Test @Test
fun newsResourceDao_deletes_items_by_ids() = fun deleteNewsResources_byId() =
runTest { runTest {
val newsResourceEntities = listOf( val newsResourceEntities = listOf(
testNewsResource( testNewsResource(

@ -16,16 +16,16 @@
package com.google.samples.apps.nowinandroid.core.database.dao package com.google.samples.apps.nowinandroid.core.database.dao
import com.google.samples.apps.nowinandroid.core.database.TestDatabaseSetup
import com.google.samples.apps.nowinandroid.core.database.model.TopicEntity import com.google.samples.apps.nowinandroid.core.database.model.TopicEntity
import kotlinx.coroutines.flow.first import kotlinx.coroutines.flow.first
import kotlinx.coroutines.test.runTest import kotlinx.coroutines.test.runTest
import org.junit.Test import org.junit.Test
import kotlin.test.assertEquals import kotlin.test.assertEquals
class TopicDaoTest : TestDatabaseSetup() { internal class TopicDaoTest : DatabaseTest() {
@Test @Test
fun topicDao_fetchTopics() = runTest { fun getTopics() = runTest {
insertTopics() insertTopics()
val savedTopics = topicDao.getTopicEntities().first() val savedTopics = topicDao.getTopicEntities().first()
@ -37,7 +37,7 @@ class TopicDaoTest : TestDatabaseSetup() {
} }
@Test @Test
fun topicDao_getSingleTopicEntity() = runTest { fun getTopic() = runTest {
insertTopics() insertTopics()
val savedTopicEntity = topicDao.getTopicEntity("2").first() val savedTopicEntity = topicDao.getTopicEntity("2").first()
@ -46,7 +46,7 @@ class TopicDaoTest : TestDatabaseSetup() {
} }
@Test @Test
fun topicDao_getOneOffTopicEntity() = runTest { fun getTopics_oneOff() = runTest {
insertTopics() insertTopics()
val savedTopics = topicDao.getOneOffTopicEntities() val savedTopics = topicDao.getOneOffTopicEntities()
@ -58,7 +58,7 @@ class TopicDaoTest : TestDatabaseSetup() {
} }
@Test @Test
fun topicDao_getTopicEntities_ByIds() = runTest { fun getTopics_byId() = runTest {
insertTopics() insertTopics()
val savedTopics = topicDao.getTopicEntities(setOf("1", "2")) val savedTopics = topicDao.getTopicEntities(setOf("1", "2"))
@ -68,7 +68,7 @@ class TopicDaoTest : TestDatabaseSetup() {
} }
@Test @Test
fun topicDao_IgnoreNewEntry_If_EntityExists() = runTest { fun insertTopic_newEntryIsIgnoredIfAlreadyExists() = runTest {
insertTopics() insertTopics()
topicDao.insertOrIgnoreTopics( topicDao.insertOrIgnoreTopics(
listOf(testTopicEntity("1", "compose")), listOf(testTopicEntity("1", "compose")),
@ -80,7 +80,7 @@ class TopicDaoTest : TestDatabaseSetup() {
} }
@Test @Test
fun topicDao_Upsert_Entities() = runTest { fun upsertTopic_existingEntryIsUpdated() = runTest {
insertTopics() insertTopics()
topicDao.upsertTopics( topicDao.upsertTopics(
listOf(testTopicEntity("1", "newName")), listOf(testTopicEntity("1", "newName")),
@ -93,7 +93,7 @@ class TopicDaoTest : TestDatabaseSetup() {
} }
@Test @Test
fun topicDao_Delete_Entities() = runTest { fun deleteTopics_byId_existingEntriesAreDeleted() = runTest {
insertTopics() insertTopics()
topicDao.deleteTopics(listOf("1", "2")) topicDao.deleteTopics(listOf("1", "2"))

Loading…
Cancel
Save