parent
5222fc864e
commit
9118ebc3dd
@ -0,0 +1,70 @@ |
||||
package net.pokeranalytics.android.filter |
||||
|
||||
import androidx.test.ext.junit.runners.AndroidJUnit4 |
||||
import net.pokeranalytics.android.model.filter.FilterType |
||||
import net.pokeranalytics.android.model.realm.Filter |
||||
import net.pokeranalytics.android.model.realm.Session |
||||
import net.pokeranalytics.android.ui.view.rowrepresentable.FilterCategory |
||||
import net.pokeranalytics.android.ui.view.rowrepresentable.FilterElement |
||||
import net.pokeranalytics.android.ui.view.rowrepresentable.FilterSection |
||||
import org.junit.Assert |
||||
import org.junit.Test |
||||
import org.junit.runner.RunWith |
||||
import java.util.* |
||||
|
||||
@RunWith(AndroidJUnit4::class) |
||||
class RealmFilterInstrumentedUnitTest : BaseFilterInstrumentedUnitTest() { |
||||
|
||||
@Test |
||||
fun testSaveLoadCashFilter() { |
||||
|
||||
val realm = this.mockRealm |
||||
realm.beginTransaction() |
||||
val filter = Filter() |
||||
filter.name = "testSaveLoadCashFilter" |
||||
|
||||
val filterElement = FilterElement.Cash |
||||
filterElement.filterSection = FilterSection.CASH_TOURNAMENT |
||||
filter.componentsFrom(arrayListOf(filterElement)) |
||||
|
||||
val useCount = filter.countBy(FilterCategory.GENERAL) |
||||
Assert.assertEquals(1, useCount) |
||||
|
||||
val isCash = filter.contains(filterElement) |
||||
Assert.assertEquals(true, isCash) |
||||
|
||||
val filterComponent = filter.components.first() |
||||
|
||||
filterComponent?.let { |
||||
Assert.assertEquals(FilterType.CASH, FilterType.valueOf(it.filterName)) |
||||
} ?: run { |
||||
Assert.fail() |
||||
} |
||||
|
||||
Session.testInstance(100.0, false, Date(), 1) |
||||
Session.testInstance(100.0, true, Date(), 1) |
||||
|
||||
realm.copyToRealm(filter) |
||||
realm.commitTransaction() |
||||
|
||||
val newRealm = this.mockRealm |
||||
newRealm.beginTransaction() |
||||
newRealm.where(Filter::class.java).equalTo("name", "testSaveLoadCashFilter").findFirst()?.let { foundFilter -> |
||||
val loadedFilter = newRealm.copyFromRealm(foundFilter) |
||||
val sessions = loadedFilter.filter( |
||||
realm, |
||||
Session::class.java, |
||||
loadedFilter.components.map { |
||||
it.filterType |
||||
} |
||||
) |
||||
|
||||
Assert.assertEquals(1, sessions.size) |
||||
sessions[0]?.run { |
||||
Assert.assertEquals(Session.Type.CASH_GAME.ordinal, (this as Session).type) |
||||
} |
||||
} ?: run { |
||||
Assert.fail() |
||||
} |
||||
} |
||||
} |
||||
Loading…
Reference in new issue