Skip to content

Commit

Permalink
updates tests for new report period picker
Browse files Browse the repository at this point in the history
  • Loading branch information
ferdyrod committed Feb 18, 2025
1 parent 304023c commit e547117
Show file tree
Hide file tree
Showing 3 changed files with 40 additions and 14 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,9 @@ package org.dhis2.usescases.datasets

import androidx.test.espresso.Espresso.onView
import androidx.test.espresso.action.ViewActions.click
import androidx.test.espresso.contrib.RecyclerViewActions
import androidx.test.espresso.matcher.ViewMatchers.hasDescendant
import androidx.test.espresso.matcher.ViewMatchers.withId
import androidx.test.espresso.matcher.ViewMatchers.withText
import org.dhis2.R
import org.dhis2.common.BaseRobot
import org.dhis2.utils.customviews.DateViewHolder


fun dataSetInitialRobot(dataSetInitialRobot: DataSetInitialRobot.() -> Unit) {
DataSetInitialRobot().apply {
Expand All @@ -24,15 +19,11 @@ class DataSetInitialRobot : BaseRobot() {
}

fun clickOnInputPeriod() {
waitForView(withId(R.id.dataSetPeriodInputLayout), 5000)
onView(withId(R.id.dataSetPeriodInputLayout)).perform(click())
}

fun clickOnActionButton() {
onView(withId(R.id.actionButton)).perform(click())
}

fun selectPeriod(period: String) {
onView(withId(R.id.recycler_date))
.perform(RecyclerViewActions.actionOnItem<DateViewHolder>(hasDescendant(withText(period)), click()))
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ import org.dhis2.composetable.ui.INPUT_TEST_FIELD_TEST_TAG
import org.dhis2.lazyActivityScenarioRule
import org.dhis2.usescases.BaseTest
import org.dhis2.usescases.datasets.dataSetTable.DataSetTableActivity
import org.dhis2.usescases.datasets.dataSetTable.period.reportPeriodSelectorRobot
import org.dhis2.usescases.datasets.datasetDetail.DataSetDetailActivity
import org.dhis2.usescases.flow.syncFlow.robot.dataSetRobot
import org.dhis2.usescases.orgunitselector.orgUnitSelectorRobot
Expand Down Expand Up @@ -40,7 +41,7 @@ class DataSetTest : BaseTest() {

@Test
fun datasetAutomate() {
val period = "Jul 2025"
val period = "July 2025"
val orgUnit = "Ngelehun CHC"

enableFeatureConfigValue(Feature.COMPOSE_AGGREGATES_SCREEN)
Expand Down Expand Up @@ -120,7 +121,13 @@ class DataSetTest : BaseTest() {

dataSetInitialRobot {
clickOnInputPeriod()
selectPeriod(period)
}

reportPeriodSelectorRobot(composeTestRule) {
selectReportPeriod(period)
}

dataSetInitialRobot {
clickOnActionButton()
}
}
Expand All @@ -146,7 +153,7 @@ class DataSetTest : BaseTest() {
//TODO This test generates a new dataset instance and breaks dataset automation count
@Test
fun shouldCreateNewDataSet() {
val period = "Jul 2025"
val period = "July 2025"
val orgUnit = "Ngelehun CHC"
startDataSetDetailActivity(
"BfMAe6Itzgt",
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
package org.dhis2.usescases.datasets.dataSetTable.period

import androidx.compose.ui.test.assertIsDisplayed
import androidx.compose.ui.test.junit4.ComposeTestRule
import androidx.compose.ui.test.onNodeWithText
import androidx.compose.ui.test.performClick
import androidx.compose.ui.test.performScrollTo
import org.dhis2.common.BaseRobot

fun reportPeriodSelectorRobot(
composeTestRule: ComposeTestRule,
robotBody: ReportPeriodSelectorRobot.() -> Unit,
) {
ReportPeriodSelectorRobot(composeTestRule).apply{
robotBody()
}
}

class ReportPeriodSelectorRobot(
private val composeTestRule: ComposeTestRule,
): BaseRobot() {
fun selectReportPeriod(period: String) {
composeTestRule.onNodeWithText(period)
.performScrollTo()
.assertIsDisplayed()
.performClick()
}
}

0 comments on commit e547117

Please sign in to comment.