Fix nightly workflow is almost always red

This commit is contained in:
MohitMali 2022-10-31 20:34:17 +05:30 committed by Kelson
parent 012d010728
commit 82d79934d5
4 changed files with 19 additions and 22 deletions

View File

@ -18,13 +18,10 @@
package org.kiwix.kiwixmobile.language package org.kiwix.kiwixmobile.language
import android.widget.AutoCompleteTextView
import androidx.test.espresso.Espresso.onView import androidx.test.espresso.Espresso.onView
import androidx.test.espresso.action.ViewActions.click import androidx.test.espresso.action.ViewActions.click
import androidx.test.espresso.action.ViewActions.typeText
import androidx.test.espresso.matcher.ViewMatchers.withId import androidx.test.espresso.matcher.ViewMatchers.withId
import androidx.test.espresso.matcher.ViewMatchers.withText import androidx.test.espresso.matcher.ViewMatchers.withText
import androidx.test.espresso.matcher.ViewMatchers.isAssignableFrom
import applyWithViewHierarchyPrinting import applyWithViewHierarchyPrinting
import org.kiwix.kiwixmobile.BaseRobot import org.kiwix.kiwixmobile.BaseRobot
import org.kiwix.kiwixmobile.Findable import org.kiwix.kiwixmobile.Findable
@ -54,7 +51,7 @@ class LanguageRobot : BaseRobot() {
fun searchAndSaveLanguage(searchLanguage: String, matchLanguage: String) { fun searchAndSaveLanguage(searchLanguage: String, matchLanguage: String) {
onView(withId(R.id.menu_language_search)).perform(click()) onView(withId(R.id.menu_language_search)).perform(click())
onView(isAssignableFrom(AutoCompleteTextView::class.java)).perform(typeText(searchLanguage)) isVisible(ViewId(androidx.appcompat.R.id.search_src_text)).text = searchLanguage
onView(withText(matchLanguage)).perform(click()) onView(withText(matchLanguage)).perform(click())
onView(withId(R.id.menu_language_save)).perform(click()) onView(withId(R.id.menu_language_save)).perform(click())
} }

View File

@ -19,18 +19,24 @@ package org.kiwix.kiwixmobile.main
import androidx.core.content.edit import androidx.core.content.edit
import androidx.preference.PreferenceManager import androidx.preference.PreferenceManager
import androidx.test.rule.ActivityTestRule import androidx.test.core.app.ActivityScenario
import androidx.test.platform.app.InstrumentationRegistry
import org.junit.Before
import org.junit.Test import org.junit.Test
import org.kiwix.kiwixmobile.BaseActivityTest import org.kiwix.kiwixmobile.BaseActivityTest
import org.kiwix.kiwixmobile.core.utils.SharedPreferenceUtil import org.kiwix.kiwixmobile.core.utils.SharedPreferenceUtil
import org.kiwix.kiwixmobile.help.HelpRobot import org.kiwix.kiwixmobile.help.HelpRobot
import org.kiwix.kiwixmobile.nav.destination.library.OnlineLibraryRobot
import org.kiwix.kiwixmobile.settings.SettingsRobot import org.kiwix.kiwixmobile.settings.SettingsRobot
import org.kiwix.kiwixmobile.webserver.ZimHostRobot import org.kiwix.kiwixmobile.webserver.ZimHostRobot
class TopLevelDestinationTest : BaseActivityTest() { class TopLevelDestinationTest : BaseActivityTest() {
override var activityRule: ActivityTestRule<KiwixMainActivity> = activityTestRule { @Before
PreferenceManager.getDefaultSharedPreferences(context).edit { fun setUp() {
PreferenceManager.getDefaultSharedPreferences(
InstrumentationRegistry.getInstrumentation().targetContext.applicationContext
).edit {
putBoolean(SharedPreferenceUtil.PREF_SHOW_INTRO, false) putBoolean(SharedPreferenceUtil.PREF_SHOW_INTRO, false)
putBoolean(SharedPreferenceUtil.PREF_WIFI_ONLY, false) putBoolean(SharedPreferenceUtil.PREF_WIFI_ONLY, false)
} }
@ -38,6 +44,7 @@ class TopLevelDestinationTest : BaseActivityTest() {
@Test @Test
fun testTopLevelDestination() { fun testTopLevelDestination() {
ActivityScenario.launch(KiwixMainActivity::class.java)
topLevel { topLevel {
clickReaderOnBottomNav { clickReaderOnBottomNav {
} }
@ -46,11 +53,7 @@ class TopLevelDestinationTest : BaseActivityTest() {
clickFileTransferIcon { clickFileTransferIcon {
} }
} }
clickDownloadOnBottomNav { clickDownloadOnBottomNav(OnlineLibraryRobot::assertLibraryListDisplayed)
assertLibraryListDisplayed()
clickOnGlobeIcon {
}
}
clickBookmarksOnNavDrawer { clickBookmarksOnNavDrawer {
assertBookMarksDisplayed() assertBookMarksDisplayed()
clickOnTrashIcon() clickOnTrashIcon()

View File

@ -22,8 +22,6 @@ import applyWithViewHierarchyPrinting
import org.kiwix.kiwixmobile.BaseRobot import org.kiwix.kiwixmobile.BaseRobot
import org.kiwix.kiwixmobile.Findable.ViewId import org.kiwix.kiwixmobile.Findable.ViewId
import org.kiwix.kiwixmobile.R import org.kiwix.kiwixmobile.R
import org.kiwix.kiwixmobile.language.LanguageRobot
import org.kiwix.kiwixmobile.language.language
fun onlineLibrary(func: OnlineLibraryRobot.() -> Unit) = fun onlineLibrary(func: OnlineLibraryRobot.() -> Unit) =
OnlineLibraryRobot().applyWithViewHierarchyPrinting(func) OnlineLibraryRobot().applyWithViewHierarchyPrinting(func)
@ -34,8 +32,7 @@ class OnlineLibraryRobot : BaseRobot() {
isVisible(ViewId(R.id.libraryList)) isVisible(ViewId(R.id.libraryList))
} }
fun clickOnGlobeIcon(func: LanguageRobot.() -> Unit) { fun clickOnGlobeIcon() {
clickOn(ViewId(R.id.select_language)) clickOn(ViewId(R.id.select_language))
language(func)
} }
} }

View File

@ -18,16 +18,16 @@
package org.kiwix.kiwixmobile.utils package org.kiwix.kiwixmobile.utils
import android.util.Log import android.util.Log
import com.adevinta.android.barista.interaction.BaristaClickInteractions.clickOn import androidx.core.view.GravityCompat
import com.adevinta.android.barista.interaction.BaristaSleepInteractions
import org.kiwix.kiwixmobile.R
import androidx.test.espresso.Espresso import androidx.test.espresso.Espresso
import androidx.test.espresso.action.ViewActions import androidx.test.espresso.action.ViewActions
import androidx.test.espresso.matcher.ViewMatchers import androidx.test.espresso.matcher.ViewMatchers
import com.adevinta.android.barista.interaction.BaristaClickInteractions.clickOn
import com.adevinta.android.barista.interaction.BaristaDialogInteractions import com.adevinta.android.barista.interaction.BaristaDialogInteractions
import com.adevinta.android.barista.interaction.BaristaDrawerInteractions import com.adevinta.android.barista.interaction.BaristaDrawerInteractions.openDrawerWithGravity
import com.adevinta.android.barista.interaction.BaristaSleepInteractions
import org.kiwix.kiwixmobile.R
import org.kiwix.kiwixmobile.testutils.TestUtils import org.kiwix.kiwixmobile.testutils.TestUtils
import java.lang.RuntimeException
/** /**
* Created by mhutti1 on 27/04/17. * Created by mhutti1 on 27/04/17.
@ -39,7 +39,7 @@ object StandardActions {
} }
fun openDrawer() { fun openDrawer() {
BaristaDrawerInteractions.openDrawer() openDrawerWithGravity(R.id.navigation_container, GravityCompat.START)
} }
@JvmStatic @JvmStatic