|
|
|
@ -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(
|
|
|
|
|