From b7822917d2aee14b7a9cca0fc81756d971140992 Mon Sep 17 00:00:00 2001 From: sangyoon Date: Wed, 3 Apr 2024 18:16:29 +0900 Subject: [PATCH] FIX test code : whenParamIsSetTo5_recentSearchQueriesAreReturnedUpTo5 ([#1327]) --- .../GetRecentSearchQueriesUseCaseTest.kt | 32 +++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/core/domain/src/test/kotlin/com/google/samples/apps/nowinandroid/core/domain/GetRecentSearchQueriesUseCaseTest.kt b/core/domain/src/test/kotlin/com/google/samples/apps/nowinandroid/core/domain/GetRecentSearchQueriesUseCaseTest.kt index 6b74a162d..83162c572 100644 --- a/core/domain/src/test/kotlin/com/google/samples/apps/nowinandroid/core/domain/GetRecentSearchQueriesUseCaseTest.kt +++ b/core/domain/src/test/kotlin/com/google/samples/apps/nowinandroid/core/domain/GetRecentSearchQueriesUseCaseTest.kt @@ -67,6 +67,38 @@ class GetRecentSearchQueriesUseCaseTest { recentSearchQueries.first().map { it.query }, ) } + + @Test + fun whenParamIsSetTo5_recentSearchQueriesAreReturnedUpTo5() = runTest { + // Obtain a stream of recent search queries with param set 5. + val recentSearchQueries = useCase(5) + + // insert 2 search queries. + for (index in 0 until 2) { + recentSearchRepository.insertOrReplaceRecentSearch(testRecentSearchQueries[index]) + // delay for saving value + delay(10L) + } + + // Check that 5 recent search queries are ordered by latest. + assertEquals( + testRecentSearchQueries.take(2).reversed(), + recentSearchQueries.first().map { it.query }, + ) + + // insert 12 more search queries. + for (index in 2 until testRecentSearchQueries.size) { + recentSearchRepository.insertOrReplaceRecentSearch(testRecentSearchQueries[index]) + // delay for saving value + delay(10L) + } + + // Check that recent search queries are ordered by latest up to 10. + assertEquals( + testRecentSearchQueries.reversed().take(5), + recentSearchQueries.first().map { it.query }, + ) + } } private val testRecentSearchQueries = listOf(