mirror of
https://github.com/readrops/Readrops.git
synced 2025-02-03 20:17:35 +01:00
Add tests for ItemsQueryBuilder
This commit is contained in:
parent
9406416ce7
commit
4460420f8a
@ -1,17 +0,0 @@
|
||||
package com.readrops.db;
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
import static org.junit.Assert.*;
|
||||
|
||||
/**
|
||||
* Example local unit test, which will execute on the development machine (host).
|
||||
*
|
||||
* @see <a href="http://d.android.com/tools/testing">Testing documentation</a>
|
||||
*/
|
||||
public class ExampleUnitTest {
|
||||
@Test
|
||||
public void addition_isCorrect() {
|
||||
assertEquals(4, 2 + 2);
|
||||
}
|
||||
}
|
73
db/src/test/java/com/readrops/db/ItemsQueryBuilderTest.kt
Normal file
73
db/src/test/java/com/readrops/db/ItemsQueryBuilderTest.kt
Normal file
@ -0,0 +1,73 @@
|
||||
package com.readrops.db
|
||||
|
||||
import com.readrops.db.filters.FilterType
|
||||
import com.readrops.db.filters.ListSortType
|
||||
import junit.framework.TestCase.assertFalse
|
||||
import junit.framework.TestCase.assertTrue
|
||||
import org.junit.Test
|
||||
|
||||
class ItemsQueryBuilderTest {
|
||||
|
||||
@Test
|
||||
fun noFilterDefaultSortCaseTest() {
|
||||
val queryFilters = QueryFilters(accountId = 1)
|
||||
|
||||
val query = ItemsQueryBuilder.buildQuery(queryFilters).sql
|
||||
|
||||
assertTrue(query.contains("Feed.account_id = 1"))
|
||||
assertTrue(query.contains("read_it_later = 0"))
|
||||
assertTrue(query.contains("Item.id DESC"))
|
||||
|
||||
assertFalse(query.contains("read = 0 And"))
|
||||
}
|
||||
|
||||
@Test
|
||||
fun feedFilterCaseTest() {
|
||||
val queryFilters = QueryFilters(accountId = 1, filterType = FilterType.FEED_FILTER,
|
||||
filterFeedId = 15)
|
||||
|
||||
val query = ItemsQueryBuilder.buildQuery(queryFilters).sql
|
||||
|
||||
assertTrue(query.contains("feed_id = 15 And read_it_later = 0"))
|
||||
}
|
||||
|
||||
@Test
|
||||
fun readLaterFilterCaseTest() {
|
||||
val queryFilters = QueryFilters(accountId = 1, filterType = FilterType.READ_IT_LATER_FILTER)
|
||||
|
||||
val query = ItemsQueryBuilder.buildQuery(queryFilters).sql
|
||||
assertTrue(query.contains("read_it_later = 1"))
|
||||
}
|
||||
|
||||
@Test
|
||||
fun starsFilterCaseTest() {
|
||||
val queryFilters = QueryFilters(accountId = 1, filterType = FilterType.STARS_FILTER)
|
||||
|
||||
val query = ItemsQueryBuilder.buildQuery(queryFilters).sql
|
||||
assertTrue(query.contains("starred = 1 And read_it_later = 0"))
|
||||
}
|
||||
|
||||
@Test
|
||||
fun oldestSortCaseTest() {
|
||||
val queryFilters = QueryFilters(accountId = 1, sortType = ListSortType.OLDEST_TO_NEWEST,
|
||||
showReadItems = false)
|
||||
|
||||
val query = ItemsQueryBuilder.buildQuery(queryFilters).sql
|
||||
|
||||
assertTrue(query.contains("read = 0 And "))
|
||||
assertTrue(query.contains("pub_date ASC"))
|
||||
}
|
||||
|
||||
@Test(expected = IllegalArgumentException::class)
|
||||
fun accountIdExceptionTest() {
|
||||
val queryFilters = QueryFilters()
|
||||
|
||||
ItemsQueryBuilder.buildQuery(queryFilters)
|
||||
}
|
||||
|
||||
@Test(expected = IllegalArgumentException::class)
|
||||
fun filterFeedIdExceptionTest() {
|
||||
val queryFilters = QueryFilters(accountId = 1, filterType = FilterType.FEED_FILTER)
|
||||
ItemsQueryBuilder.buildQuery(queryFilters)
|
||||
}
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user