diff --git a/app/src/androidTest/java/net/pokeranalytics/android/unitTests/filter/CustomFieldFilterInstrumentedUnitTest.kt b/app/src/androidTest/java/net/pokeranalytics/android/unitTests/filter/CustomFieldFilterInstrumentedUnitTest.kt index f3880227..8f732f0e 100644 --- a/app/src/androidTest/java/net/pokeranalytics/android/unitTests/filter/CustomFieldFilterInstrumentedUnitTest.kt +++ b/app/src/androidTest/java/net/pokeranalytics/android/unitTests/filter/CustomFieldFilterInstrumentedUnitTest.kt @@ -22,12 +22,11 @@ class CustomFieldFilterInstrumentedUnitTest : BaseFilterInstrumentedUnitTest() { val realm = this.mockRealm realm.beginTransaction() - val cf1 = CustomField() - cf1.id = "1" + val cf1 = realm.createObject(CustomField::class.java, "1") cf1.type = CustomField.Type.LIST.ordinal - val cfe1 = CustomFieldEntry() - val cfe2 = CustomFieldEntry() + val cfe1 = realm.createObject(CustomFieldEntry::class.java, "9") + val cfe2 = realm.createObject(CustomFieldEntry::class.java, "8") cfe1.value = "super" cfe2.value = "nul" @@ -51,35 +50,38 @@ class CustomFieldFilterInstrumentedUnitTest : BaseFilterInstrumentedUnitTest() { @Test fun testCustomFieldAmountFilter() { - val realm = this.mockRealm - realm.beginTransaction() + val cfId = "1234" + var s2Id = "" - val cf1 = CustomField() - cf1.id = "1234" - cf1.type = CustomField.Type.AMOUNT.ordinal + val realm = this.mockRealm + realm.executeTransaction { + val cf = realm.createObject(CustomField::class.java, cfId) + cf.type = CustomField.Type.AMOUNT.ordinal - val cfe1 = CustomFieldEntry() - cfe1.id = "999" - cf1.entries.add(cfe1) - cfe1.numericValue = 30.0 + val cfe1 = realm.createObject(CustomFieldEntry::class.java, "999") + cf.entries.add(cfe1) + cfe1.numericValue = 30.0 - val cfe2 = CustomFieldEntry() - cfe2.id = "888" - cf1.entries.add(cfe2) - cfe2.numericValue = 100.0 + val cfe2 = realm.createObject(CustomFieldEntry::class.java, "888") + cf.entries.add(cfe2) + cfe2.numericValue = 100.0 - val s1 = Session.testInstance(100.0, false, Date(), 1) - s1.customFieldEntries.add(cfe1) - val s2 = Session.testInstance(100.0, true, Date(), 1) - s2.customFieldEntries.add(cfe2) - realm.commitTransaction() + val s1 = Session.testInstance(100.0, false, Date(), 1) + s1.customFieldEntries.add(cfe1) + val s2 = Session.testInstance(100.0, true, Date(), 1) + s2.customFieldEntries.add(cfe2) + s2Id = s2.id + } - val sessions = Filter.queryOn(realm, Query(QueryCondition.CustomFieldNumberQuery(cf1.id, 100.0))) + val condition = QueryCondition.CustomFieldNumberQuery(cfId, 100.0) + val sessions = Filter.queryOn(realm, Query(condition)) Assert.assertEquals(1, sessions.size) - sessions[0]?.run { - Assert.assertEquals(s2.id, (this).id) + sessions.first()?.run { + Assert.assertEquals(s2Id, this.id) } + } + } \ No newline at end of file diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 04c3d2ef..3d9fb95c 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -58,10 +58,10 @@ android:screenOrientation="portrait" android:windowSoftInputMode="adjustNothing" /> + - + , otherQueryCondition: QueryCondition? = null ): RealmQuery { + val fieldName = FilterHelper.fieldNameForQueryType(this::class.java) if (BuildConfig.DEBUG) { fieldName ?: throw PokerAnalyticsException.QueryValueMapUnknown diff --git a/app/src/main/java/net/pokeranalytics/android/model/realm/Filter.kt b/app/src/main/java/net/pokeranalytics/android/model/realm/Filter.kt index 8fd1e6e9..010e2340 100644 --- a/app/src/main/java/net/pokeranalytics/android/model/realm/Filter.kt +++ b/app/src/main/java/net/pokeranalytics/android/model/realm/Filter.kt @@ -47,16 +47,16 @@ open class Filter : RealmObject(), RowRepresentable, Editable, Deletable, Counta return realm.where().equalTo("id", filterId).findFirst() } - inline fun queryOn(realm: Realm, query: Query, sortField: String? = null): RealmResults { - val rootQuery = realm.where() - var realmQuery = query.queryWith(rootQuery) - sortField?.let { - realmQuery = realmQuery.sort(it) - } - val desc = realmQuery.description - return realmQuery.findAll() - } - } + inline fun queryOn(realm: Realm, query: Query, sortField: String? = null): RealmResults { + val rootQuery = realm.where() + var realmQuery = query.queryWith(rootQuery) + sortField?.let { + realmQuery = realmQuery.sort(it) + } + val desc = realmQuery.description + return realmQuery.findAll() + } + } override val viewType: Int get() = RowViewType.TITLE_VALUE_ACTION.ordinal diff --git a/app/src/main/java/net/pokeranalytics/android/ui/activity/HomeActivity.kt b/app/src/main/java/net/pokeranalytics/android/ui/activity/HomeActivity.kt index 59cc7c79..e9a540db 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/activity/HomeActivity.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/activity/HomeActivity.kt @@ -48,12 +48,9 @@ class HomeActivity : PokerAnalyticsActivity() { R.id.navigation_reports -> { displayFragment(3) } - R.id.navigation_settings -> { + R.id.navigation_more -> { displayFragment(4) } -// R.id.navigation_more -> { -// displayFragment(4) -// } } return@OnNavigationItemSelectedListener true } diff --git a/app/src/main/java/net/pokeranalytics/android/ui/activity/NewDataMenuActivity.kt b/app/src/main/java/net/pokeranalytics/android/ui/activity/NewDataMenuActivity.kt index 8cc3dfcb..26d2fba7 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/activity/NewDataMenuActivity.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/activity/NewDataMenuActivity.kt @@ -40,7 +40,7 @@ class NewDataMenuActivity : PokerAnalyticsActivity() { super.onCreate(savedInstanceState) if (Build.VERSION.SDK_INT < Build.VERSION_CODES.O) { // used to fix Oreo crash - setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); + requestedOrientation = ActivityInfo.SCREEN_ORIENTATION_PORTRAIT } setContentView(R.layout.activity_new_data) diff --git a/app/src/main/java/net/pokeranalytics/android/ui/activity/components/PokerAnalyticsActivity.kt b/app/src/main/java/net/pokeranalytics/android/ui/activity/components/PokerAnalyticsActivity.kt index 77b324f0..f72d90b2 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/activity/components/PokerAnalyticsActivity.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/activity/components/PokerAnalyticsActivity.kt @@ -1,6 +1,7 @@ package net.pokeranalytics.android.ui.activity.components import android.Manifest.permission.ACCESS_FINE_LOCATION +import android.content.pm.ActivityInfo import android.content.pm.PackageManager import android.os.Bundle import android.os.PersistableBundle @@ -33,6 +34,7 @@ open class PokerAnalyticsActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?, persistentState: PersistableBundle?) { super.onCreate(savedInstanceState, persistentState) Crashlytics.log("$this.localClassName onCreate") + requestedOrientation = ActivityInfo.SCREEN_ORIENTATION_PORTRAIT // fixes crash } override fun onResume() { diff --git a/app/src/main/res/menu/navigation_home.xml b/app/src/main/res/menu/navigation_home.xml index 7d41675a..d4a0f3b6 100644 --- a/app/src/main/res/menu/navigation_home.xml +++ b/app/src/main/res/menu/navigation_home.xml @@ -1,24 +1,6 @@ - - - - - - - + + + + +