From c37d50b37202d6b0cfc61546154a3b616bb40ced Mon Sep 17 00:00:00 2001 From: Kanahia Date: Tue, 10 Oct 2023 13:08:37 +0530 Subject: [PATCH 1/4] Fixes #2228 --- datacapture/src/main/res/layout/drop_down_view.xml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/datacapture/src/main/res/layout/drop_down_view.xml b/datacapture/src/main/res/layout/drop_down_view.xml index 0c99c82b54..0a457e2b41 100644 --- a/datacapture/src/main/res/layout/drop_down_view.xml +++ b/datacapture/src/main/res/layout/drop_down_view.xml @@ -45,6 +45,9 @@ android:drawablePadding="@dimen/icon_drawable_padding" android:layout_width="match_parent" android:layout_height="wrap_content" + android:editable="false" + android:focusable="false" + android:focusableInTouchMode="false" /> From 247696f962b682cb3bdd1879e05dc5315efc9cb5 Mon Sep 17 00:00:00 2001 From: Kanahia Date: Mon, 16 Oct 2023 00:56:01 +0530 Subject: [PATCH 2/4] Added test case to check selection drop-downs are not editable --- .../DropDownViewHolderFactoryEspressoTest.kt | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/datacapture/src/androidTest/java/com/google/android/fhir/datacapture/test/views/DropDownViewHolderFactoryEspressoTest.kt b/datacapture/src/androidTest/java/com/google/android/fhir/datacapture/test/views/DropDownViewHolderFactoryEspressoTest.kt index c550b3d57a..01ecb57d03 100644 --- a/datacapture/src/androidTest/java/com/google/android/fhir/datacapture/test/views/DropDownViewHolderFactoryEspressoTest.kt +++ b/datacapture/src/androidTest/java/com/google/android/fhir/datacapture/test/views/DropDownViewHolderFactoryEspressoTest.kt @@ -22,10 +22,14 @@ import android.widget.FrameLayout import android.widget.TextView import androidx.test.espresso.Espresso.onData import androidx.test.espresso.Espresso.onView +import androidx.test.espresso.action.ViewActions import androidx.test.espresso.action.ViewActions.click import androidx.test.espresso.action.ViewActions.typeText +import androidx.test.espresso.assertion.ViewAssertions +import androidx.test.espresso.assertion.ViewAssertions.doesNotExist import androidx.test.espresso.assertion.ViewAssertions.matches import androidx.test.espresso.matcher.RootMatchers.isPlatformPopup +import androidx.test.espresso.matcher.ViewMatchers import androidx.test.espresso.matcher.ViewMatchers.isDisplayed import androidx.test.espresso.matcher.ViewMatchers.withId import androidx.test.espresso.matcher.ViewMatchers.withText @@ -55,6 +59,7 @@ import org.junit.Before import org.junit.Rule import org.junit.Test + class DropDownViewHolderFactoryEspressoTest { @Rule @JvmField @@ -128,7 +133,23 @@ class DropDownViewHolderFactoryEspressoTest { .isEqualTo("Coding 3") assertThat((answerHolder!!.single().value as Coding).display).isEqualTo("Coding 3") } + @Test + fun testAutoCompleteNotYesNoOrDash() { + try { + onView(withId(R.id.auto_complete)) + .perform(click()) + .perform(typeText("Coding")) + .perform(ViewActions.pressImeActionButton()) + } catch (e: androidx.test.espresso.PerformException) { + if (e.message?.contains("Error performing 'type text(Coding)' on view") == true) { + return + } + throw e + } + assertThat(viewHolder.itemView.findViewById(R.id.auto_complete).text.toString()) + .isNotEqualTo("Coding") + } @Test fun shouldClearAutoCompleteTextViewOnRebindingView() { var answerHolder: List? = null From a1b662c52b8556a2f3e06624388f77e3d9af71ad Mon Sep 17 00:00:00 2001 From: Kanahia Date: Mon, 16 Oct 2023 23:21:08 +0530 Subject: [PATCH 3/4] Ran spotlessCheck --- .../test/views/DropDownViewHolderFactoryEspressoTest.kt | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/datacapture/src/androidTest/java/com/google/android/fhir/datacapture/test/views/DropDownViewHolderFactoryEspressoTest.kt b/datacapture/src/androidTest/java/com/google/android/fhir/datacapture/test/views/DropDownViewHolderFactoryEspressoTest.kt index 01ecb57d03..bcd2613bea 100644 --- a/datacapture/src/androidTest/java/com/google/android/fhir/datacapture/test/views/DropDownViewHolderFactoryEspressoTest.kt +++ b/datacapture/src/androidTest/java/com/google/android/fhir/datacapture/test/views/DropDownViewHolderFactoryEspressoTest.kt @@ -25,11 +25,8 @@ import androidx.test.espresso.Espresso.onView import androidx.test.espresso.action.ViewActions import androidx.test.espresso.action.ViewActions.click import androidx.test.espresso.action.ViewActions.typeText -import androidx.test.espresso.assertion.ViewAssertions -import androidx.test.espresso.assertion.ViewAssertions.doesNotExist import androidx.test.espresso.assertion.ViewAssertions.matches import androidx.test.espresso.matcher.RootMatchers.isPlatformPopup -import androidx.test.espresso.matcher.ViewMatchers import androidx.test.espresso.matcher.ViewMatchers.isDisplayed import androidx.test.espresso.matcher.ViewMatchers.withId import androidx.test.espresso.matcher.ViewMatchers.withText @@ -59,7 +56,6 @@ import org.junit.Before import org.junit.Rule import org.junit.Test - class DropDownViewHolderFactoryEspressoTest { @Rule @JvmField @@ -133,6 +129,7 @@ class DropDownViewHolderFactoryEspressoTest { .isEqualTo("Coding 3") assertThat((answerHolder!!.single().value as Coding).display).isEqualTo("Coding 3") } + @Test fun testAutoCompleteNotYesNoOrDash() { try { @@ -150,6 +147,7 @@ class DropDownViewHolderFactoryEspressoTest { assertThat(viewHolder.itemView.findViewById(R.id.auto_complete).text.toString()) .isNotEqualTo("Coding") } + @Test fun shouldClearAutoCompleteTextViewOnRebindingView() { var answerHolder: List? = null From dbbdbd56a47977654b7a423080ce5819a11fe547 Mon Sep 17 00:00:00 2001 From: Kanahia Date: Mon, 13 Nov 2023 00:07:14 +0530 Subject: [PATCH 4/4] Removed test case and made edits --- .../DropDownViewHolderFactoryEspressoTest.kt | 19 ------------------- .../src/main/res/layout/drop_down_view.xml | 2 -- 2 files changed, 21 deletions(-) diff --git a/datacapture/src/androidTest/java/com/google/android/fhir/datacapture/test/views/DropDownViewHolderFactoryEspressoTest.kt b/datacapture/src/androidTest/java/com/google/android/fhir/datacapture/test/views/DropDownViewHolderFactoryEspressoTest.kt index bcd2613bea..c550b3d57a 100644 --- a/datacapture/src/androidTest/java/com/google/android/fhir/datacapture/test/views/DropDownViewHolderFactoryEspressoTest.kt +++ b/datacapture/src/androidTest/java/com/google/android/fhir/datacapture/test/views/DropDownViewHolderFactoryEspressoTest.kt @@ -22,7 +22,6 @@ import android.widget.FrameLayout import android.widget.TextView import androidx.test.espresso.Espresso.onData import androidx.test.espresso.Espresso.onView -import androidx.test.espresso.action.ViewActions import androidx.test.espresso.action.ViewActions.click import androidx.test.espresso.action.ViewActions.typeText import androidx.test.espresso.assertion.ViewAssertions.matches @@ -130,24 +129,6 @@ class DropDownViewHolderFactoryEspressoTest { assertThat((answerHolder!!.single().value as Coding).display).isEqualTo("Coding 3") } - @Test - fun testAutoCompleteNotYesNoOrDash() { - try { - onView(withId(R.id.auto_complete)) - .perform(click()) - .perform(typeText("Coding")) - .perform(ViewActions.pressImeActionButton()) - } catch (e: androidx.test.espresso.PerformException) { - if (e.message?.contains("Error performing 'type text(Coding)' on view") == true) { - return - } - throw e - } - - assertThat(viewHolder.itemView.findViewById(R.id.auto_complete).text.toString()) - .isNotEqualTo("Coding") - } - @Test fun shouldClearAutoCompleteTextViewOnRebindingView() { var answerHolder: List? = null diff --git a/datacapture/src/main/res/layout/drop_down_view.xml b/datacapture/src/main/res/layout/drop_down_view.xml index 0a457e2b41..de4f82e3e4 100644 --- a/datacapture/src/main/res/layout/drop_down_view.xml +++ b/datacapture/src/main/res/layout/drop_down_view.xml @@ -46,8 +46,6 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:editable="false" - android:focusable="false" - android:focusableInTouchMode="false" />