mirror of
https://github.com/fork-maintainers/iceraven-browser
synced 2024-11-03 23:15:31 +00:00
No issue: creates new SmokeTest annotation.
Updates smoke tests list according to the ones in TestRail.
This commit is contained in:
parent
b0ad98a204
commit
ba91180e85
@ -0,0 +1,9 @@
|
||||
package org.mozilla.fenix.customannotations
|
||||
|
||||
/**
|
||||
* A custom annotation to mark the smoke tests corresponding to the ones in TestRail:
|
||||
* https://testrail.stage.mozaws.net/index.php?/suites/view/3192
|
||||
*/
|
||||
@Target(AnnotationTarget.FUNCTION, AnnotationTarget.CLASS)
|
||||
@Retention(AnnotationRetention.RUNTIME)
|
||||
annotation class SmokeTest
|
@ -15,6 +15,7 @@ import org.junit.Before
|
||||
import org.junit.Rule
|
||||
import org.junit.Test
|
||||
import org.mozilla.fenix.R
|
||||
import org.mozilla.fenix.customannotations.SmokeTest
|
||||
import org.mozilla.fenix.ext.bookmarkStorage
|
||||
import org.mozilla.fenix.ext.settings
|
||||
import org.mozilla.fenix.helpers.AndroidAssetDispatcher
|
||||
@ -170,6 +171,7 @@ class BookmarksTest {
|
||||
}
|
||||
}
|
||||
|
||||
@SmokeTest
|
||||
@Test
|
||||
fun editBookmarkTest() {
|
||||
val defaultWebPage = TestAssetHelper.getGenericAsset(mockWebServer, 1)
|
||||
@ -278,6 +280,7 @@ class BookmarksTest {
|
||||
}
|
||||
}
|
||||
|
||||
@SmokeTest
|
||||
@Test
|
||||
fun deleteBookmarkTest() {
|
||||
val defaultWebPage = TestAssetHelper.getGenericAsset(mockWebServer, 1)
|
||||
@ -297,6 +300,7 @@ class BookmarksTest {
|
||||
}
|
||||
}
|
||||
|
||||
@SmokeTest
|
||||
@Test
|
||||
fun undoDeleteBookmarkTest() {
|
||||
val defaultWebPage = TestAssetHelper.getGenericAsset(mockWebServer, 1)
|
||||
@ -321,8 +325,9 @@ class BookmarksTest {
|
||||
}
|
||||
}
|
||||
|
||||
@SmokeTest
|
||||
@Test
|
||||
fun multiSelectionToolbarItemsTest() {
|
||||
fun bookmarksMultiSelectionToolbarItemsTest() {
|
||||
val defaultWebPage = TestAssetHelper.getGenericAsset(mockWebServer, 1)
|
||||
|
||||
browserScreen {
|
||||
@ -346,6 +351,7 @@ class BookmarksTest {
|
||||
}
|
||||
}
|
||||
|
||||
@SmokeTest
|
||||
@Test
|
||||
fun openSelectionInNewTabTest() {
|
||||
val settings = activityTestRule.activity.applicationContext.settings()
|
||||
@ -376,6 +382,7 @@ class BookmarksTest {
|
||||
}
|
||||
}
|
||||
|
||||
@SmokeTest
|
||||
@Test
|
||||
fun openSelectionInPrivateTabTest() {
|
||||
val defaultWebPage = TestAssetHelper.getGenericAsset(mockWebServer, 1)
|
||||
@ -399,6 +406,7 @@ class BookmarksTest {
|
||||
}
|
||||
}
|
||||
|
||||
@SmokeTest
|
||||
@Test
|
||||
fun deleteMultipleSelectionTest() {
|
||||
val firstWebPage = TestAssetHelper.getGenericAsset(mockWebServer, 1)
|
||||
@ -428,6 +436,7 @@ class BookmarksTest {
|
||||
}
|
||||
}
|
||||
|
||||
@SmokeTest
|
||||
@Test
|
||||
fun undoDeleteMultipleSelectionTest() {
|
||||
val firstWebPage = TestAssetHelper.getGenericAsset(mockWebServer, 1)
|
||||
@ -516,6 +525,7 @@ class BookmarksTest {
|
||||
}
|
||||
}
|
||||
|
||||
@SmokeTest
|
||||
@Test
|
||||
fun changeBookmarkParentFolderTest() {
|
||||
val defaultWebPage = TestAssetHelper.getGenericAsset(mockWebServer, 1)
|
||||
|
@ -11,6 +11,7 @@ import org.junit.After
|
||||
import org.junit.Before
|
||||
import org.junit.Rule
|
||||
import org.junit.Test
|
||||
import org.mozilla.fenix.customannotations.SmokeTest
|
||||
import org.mozilla.fenix.ext.settings
|
||||
import org.mozilla.fenix.helpers.AndroidAssetDispatcher
|
||||
import org.mozilla.fenix.helpers.HomeActivityIntentTestRule
|
||||
@ -53,6 +54,7 @@ class ContextMenusTest {
|
||||
mockWebServer.shutdown()
|
||||
}
|
||||
|
||||
@SmokeTest
|
||||
@Test
|
||||
fun verifyContextOpenLinkNewTab() {
|
||||
val pageLinks =
|
||||
@ -76,6 +78,7 @@ class ContextMenusTest {
|
||||
}
|
||||
}
|
||||
|
||||
@SmokeTest
|
||||
@Test
|
||||
fun verifyContextOpenLinkPrivateTab() {
|
||||
val pageLinks =
|
||||
|
@ -17,6 +17,7 @@ import org.junit.Ignore
|
||||
import org.junit.Rule
|
||||
import org.junit.Test
|
||||
import org.mozilla.fenix.R
|
||||
import org.mozilla.fenix.customannotations.SmokeTest
|
||||
import org.mozilla.fenix.ext.settings
|
||||
import org.mozilla.fenix.helpers.AndroidAssetDispatcher
|
||||
import org.mozilla.fenix.helpers.HomeActivityTestRule
|
||||
@ -122,6 +123,7 @@ class HistoryTest {
|
||||
}
|
||||
}
|
||||
|
||||
@SmokeTest
|
||||
@Test
|
||||
fun deleteAllHistoryTest() {
|
||||
val firstWebPage = TestAssetHelper.getGenericAsset(mockWebServer, 1)
|
||||
@ -144,8 +146,9 @@ class HistoryTest {
|
||||
}
|
||||
}
|
||||
|
||||
@SmokeTest
|
||||
@Test
|
||||
fun multiSelectionToolbarItemsTest() {
|
||||
fun historyMultiSelectionToolbarItemsTest() {
|
||||
val firstWebPage = TestAssetHelper.getGenericAsset(mockWebServer, 1)
|
||||
|
||||
navigationToolbar {
|
||||
|
@ -8,6 +8,7 @@ import androidx.compose.ui.test.junit4.AndroidComposeTestRule
|
||||
import org.junit.Ignore
|
||||
import org.junit.Rule
|
||||
import org.junit.Test
|
||||
import org.mozilla.fenix.customannotations.SmokeTest
|
||||
import org.mozilla.fenix.helpers.HomeActivityTestRule
|
||||
import org.mozilla.fenix.ui.robots.homeScreen
|
||||
|
||||
@ -40,6 +41,7 @@ class SearchTest {
|
||||
}
|
||||
}
|
||||
|
||||
@SmokeTest
|
||||
@Ignore("This test cannot run on virtual devices due to camera permissions being required")
|
||||
@Test
|
||||
fun scanButtonTest() {
|
||||
|
@ -13,11 +13,12 @@ import org.junit.Before
|
||||
import org.junit.Rule
|
||||
import org.junit.Test
|
||||
import org.mozilla.fenix.FenixApplication
|
||||
import org.mozilla.fenix.ext.settings
|
||||
import org.mozilla.fenix.helpers.AndroidAssetDispatcher
|
||||
import org.mozilla.fenix.helpers.FeatureSettingsHelper
|
||||
import org.mozilla.fenix.helpers.HomeActivityIntentTestRule
|
||||
import org.mozilla.fenix.helpers.TestAssetHelper.getGenericAsset
|
||||
import org.mozilla.fenix.helpers.TestAssetHelper.getLoremIpsumAsset
|
||||
import org.mozilla.fenix.helpers.TestHelper.restartApp
|
||||
import org.mozilla.fenix.ui.robots.checkTextSizeOnWebsite
|
||||
import org.mozilla.fenix.ui.robots.homeScreen
|
||||
import org.mozilla.fenix.ui.robots.navigationToolbar
|
||||
@ -32,6 +33,7 @@ class SettingsBasicsTest {
|
||||
|
||||
private val mDevice = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation())
|
||||
private lateinit var mockWebServer: MockWebServer
|
||||
private val featureSettingsHelper = FeatureSettingsHelper()
|
||||
|
||||
@get:Rule
|
||||
val activityIntentTestRule = HomeActivityIntentTestRule()
|
||||
@ -42,13 +44,16 @@ class SettingsBasicsTest {
|
||||
dispatcher = AndroidAssetDispatcher()
|
||||
start()
|
||||
}
|
||||
val settings = activityIntentTestRule.activity.settings()
|
||||
settings.shouldShowJumpBackInCFR = false
|
||||
|
||||
featureSettingsHelper.setJumpBackCFREnabled(false)
|
||||
}
|
||||
|
||||
@After
|
||||
fun tearDown() {
|
||||
mockWebServer.shutdown()
|
||||
|
||||
// resetting modified features enabled setting to default
|
||||
featureSettingsHelper.resetAllFeatureFlags()
|
||||
}
|
||||
|
||||
private fun getUiTheme(): Boolean {
|
||||
@ -156,8 +161,6 @@ class SettingsBasicsTest {
|
||||
// Goes through the settings and changes the default text on a webpage, then verifies if the text has changed.
|
||||
val fenixApp = activityIntentTestRule.activity.applicationContext as FenixApplication
|
||||
val webpage = getLoremIpsumAsset(mockWebServer).url
|
||||
val settings = fenixApp.applicationContext.settings()
|
||||
settings.shouldShowJumpBackInCFR = false
|
||||
|
||||
// This value will represent the text size percentage the webpage will scale to. The default value is 100%.
|
||||
val textSizePercentage = 180
|
||||
@ -182,4 +185,24 @@ class SettingsBasicsTest {
|
||||
verifyMenuItemsAreDisabled()
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
fun startOnHomepageTest() {
|
||||
val genericURL = getGenericAsset(mockWebServer, 1)
|
||||
|
||||
navigationToolbar {
|
||||
}.enterURLAndEnterToBrowser(genericURL.url) {
|
||||
mDevice.waitForIdle()
|
||||
}.openThreeDotMenu {
|
||||
}.openSettings {
|
||||
}.openHomepageSubMenu {
|
||||
clickStartOnHomepageButton()
|
||||
}
|
||||
|
||||
restartApp(activityIntentTestRule)
|
||||
|
||||
homeScreen {
|
||||
verifyHomeScreen()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -11,6 +11,7 @@ import org.junit.After
|
||||
import org.junit.Before
|
||||
import org.junit.Rule
|
||||
import org.junit.Test
|
||||
import org.mozilla.fenix.customannotations.SmokeTest
|
||||
import org.mozilla.fenix.ext.settings
|
||||
import org.mozilla.fenix.helpers.AndroidAssetDispatcher
|
||||
import org.mozilla.fenix.helpers.HomeActivityIntentTestRule
|
||||
@ -453,6 +454,7 @@ class SettingsPrivacyTest {
|
||||
}
|
||||
}
|
||||
|
||||
@SmokeTest
|
||||
@Test
|
||||
fun deleteTabsDataTest() {
|
||||
val defaultWebPage = TestAssetHelper.getGenericAsset(mockWebServer, 1)
|
||||
@ -482,6 +484,7 @@ class SettingsPrivacyTest {
|
||||
}
|
||||
}
|
||||
|
||||
@SmokeTest
|
||||
@Test
|
||||
fun deleteDeleteBrowsingHistoryDataTest() {
|
||||
val firstWebPage = TestAssetHelper.getGenericAsset(mockWebServer, 1)
|
||||
|
@ -22,6 +22,7 @@ import org.junit.Rule
|
||||
import org.junit.Test
|
||||
import org.mozilla.fenix.IntentReceiverActivity
|
||||
import org.mozilla.fenix.R
|
||||
import org.mozilla.fenix.customannotations.SmokeTest
|
||||
import org.mozilla.fenix.ext.components
|
||||
import org.mozilla.fenix.ext.settings
|
||||
import org.mozilla.fenix.helpers.AndroidAssetDispatcher
|
||||
@ -59,10 +60,13 @@ import org.mozilla.fenix.ui.util.ROMANIAN_LANGUAGE_HEADER
|
||||
import org.mozilla.fenix.ui.util.STRING_ONBOARDING_TRACKING_PROTECTION_HEADER
|
||||
|
||||
/**
|
||||
* Test Suite that contains tests defined as part of the Smoke and Sanity check defined in Test rail.
|
||||
* Test Suite that contains a part of the Smoke and Sanity tests defined in TestRail:
|
||||
* https://testrail.stage.mozaws.net/index.php?/suites/view/3192
|
||||
* Other smoke tests have been marked with the @SmokeTest annotation throughout the ui package in order to limit this class expansion.
|
||||
* These tests will verify different functionalities of the app as a way to quickly detect regressions in main areas
|
||||
*/
|
||||
@Suppress("ForbiddenComment")
|
||||
@SmokeTest
|
||||
class SmokeTest {
|
||||
private val mDevice = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation())
|
||||
private lateinit var mockWebServer: MockWebServer
|
||||
@ -74,18 +78,7 @@ class SmokeTest {
|
||||
private var bookmarksListIdlingResource: RecyclerViewIdlingResource? = null
|
||||
private var localeListIdlingResource: RecyclerViewIdlingResource? = null
|
||||
private val customMenuItem = "TestMenuItem"
|
||||
|
||||
// This finds the dialog fragment child of the homeFragment, otherwise the awesomeBar would return null
|
||||
private fun getAwesomebarView(): View? {
|
||||
val homeFragment = activityTestRule.activity.supportFragmentManager.primaryNavigationFragment
|
||||
val searchDialogFragment = homeFragment?.childFragmentManager?.fragments?.first {
|
||||
it.javaClass.simpleName == "SearchDialogFragment"
|
||||
}
|
||||
return searchDialogFragment?.view?.findViewById(R.id.awesome_bar)
|
||||
}
|
||||
|
||||
private lateinit var browserStore: BrowserStore
|
||||
|
||||
private val featureSettingsHelper = FeatureSettingsHelper()
|
||||
|
||||
@get:Rule
|
||||
|
Loading…
Reference in New Issue
Block a user