mirror of
				https://github.com/commons-app/apps-android-commons.git
				synced 2025-11-04 08:43:52 +01:00 
			
		
		
		
	* *.kt: bulk correction of formatting using ktlint --format * *.kt: replace wildcard imports and second stage auto format ktlint --format * QuizQuestionTest.kt: modified property names to camel case to meet ktlint standard * LevelControllerTest.kt: modified property names to camel case to meet ktlint standard * QuizActivityUnitTest.kt: modified property names to camel case to meet ktlint standard * MediaDetailFragmentUnitTests.kt: modified property names to camel case to meet ktlint standard * UploadWorker.kt: modified property names to camel case to meet ktlint standard * UploadClient.kt: modified property names to camel case to meet ktlint standard * BasePagingPresenter.kt: modified property names to camel case to meet ktlint standard * DescriptionEditActivity.kt: modified property names to camel case to meet ktlint standard * OnSwipeTouchListener.kt: modified property names to camel case to meet ktlint standard * MediaDetailFragmentUnitTests.kt: corrected excessive line length to meet ktlint standard * DepictedItem.kt: corrected property name format and catch format to for ktlint standard * UploadCategoryAdapter.kt: corrected class definition format to meet ktlint standard * CustomSelectorActivity.kt: reformatted function names to first letter lowercase to meet ktlint standard * MediaDetailFragmentUnitTests.kt: fix string literal indentation to meet ktlint standard * NotForUploadDao.kt: file renamed to match class name, new file NotForUploadStatusDao.kt * UploadedDao.kt: file renamed to match class name, new file UploadedStatusDao.kt * Urls.kt: fixed excessive line length for ktLint standard * Snak_partial.kt & Statement_partial.kt: refactored to remove underscores in class names to meet ktLint standard * *.kt: fixed consecutive KDOC error for ktLint * PageableBaseDataSourceTest.kt & UploadPresenterTest.kt: fixed excessive line lengths to meet ktLint standard * CheckboxTriStatesTest.kt: renamed file to match class name to meet ktLint standard * .kt: resolved backing-property-naming error in ktLint, made matching properties public, matched names and refactored * TestConnectionFactory.kt: fixed property naming to adhere to ktLint standard
		
			
				
	
	
		
			203 lines
		
	
	
	
		
			6.3 KiB
		
	
	
	
		
			Kotlin
		
	
	
	
	
	
			
		
		
	
	
			203 lines
		
	
	
	
		
			6.3 KiB
		
	
	
	
		
			Kotlin
		
	
	
	
	
	
package fr.free.nrw.commons
 | 
						|
 | 
						|
import android.app.Activity
 | 
						|
import android.app.Instrumentation
 | 
						|
import androidx.recyclerview.widget.RecyclerView
 | 
						|
import androidx.test.espresso.Espresso.onView
 | 
						|
import androidx.test.espresso.action.ViewActions.click
 | 
						|
import androidx.test.espresso.action.ViewActions.closeSoftKeyboard
 | 
						|
import androidx.test.espresso.action.ViewActions.replaceText
 | 
						|
import androidx.test.espresso.action.ViewActions.scrollTo
 | 
						|
import androidx.test.espresso.contrib.RecyclerViewActions
 | 
						|
import androidx.test.espresso.intent.Intents
 | 
						|
import androidx.test.espresso.intent.matcher.IntentMatchers
 | 
						|
import androidx.test.espresso.matcher.ViewMatchers.isDisplayed
 | 
						|
import androidx.test.espresso.matcher.ViewMatchers.withId
 | 
						|
import androidx.test.ext.junit.runners.AndroidJUnit4
 | 
						|
import androidx.test.platform.app.InstrumentationRegistry
 | 
						|
import androidx.test.rule.ActivityTestRule
 | 
						|
import androidx.test.rule.GrantPermissionRule
 | 
						|
import androidx.test.uiautomator.UiDevice
 | 
						|
import fr.free.nrw.commons.LocationPicker.LocationPickerActivity
 | 
						|
import fr.free.nrw.commons.UITestHelper.Companion.childAtPosition
 | 
						|
import fr.free.nrw.commons.auth.LoginActivity
 | 
						|
import org.hamcrest.CoreMatchers
 | 
						|
import org.hamcrest.Matchers.allOf
 | 
						|
import org.junit.After
 | 
						|
import org.junit.Before
 | 
						|
import org.junit.Rule
 | 
						|
import org.junit.Test
 | 
						|
import org.junit.runner.RunWith
 | 
						|
 | 
						|
@RunWith(AndroidJUnit4::class)
 | 
						|
class UploadCancelledTest {
 | 
						|
    @Rule
 | 
						|
    @JvmField
 | 
						|
    var mActivityTestRule = ActivityTestRule(LoginActivity::class.java)
 | 
						|
 | 
						|
    @Rule
 | 
						|
    @JvmField
 | 
						|
    var mGrantPermissionRule: GrantPermissionRule =
 | 
						|
        GrantPermissionRule.grant(
 | 
						|
            "android.permission.WRITE_EXTERNAL_STORAGE",
 | 
						|
        )
 | 
						|
 | 
						|
    private val device: UiDevice =
 | 
						|
        UiDevice.getInstance(InstrumentationRegistry.getInstrumentation())
 | 
						|
 | 
						|
    @Before
 | 
						|
    fun setup() {
 | 
						|
        try {
 | 
						|
            Intents.init()
 | 
						|
        } catch (ex: IllegalStateException) {
 | 
						|
        }
 | 
						|
        device.unfreezeRotation()
 | 
						|
        device.setOrientationNatural()
 | 
						|
        device.freezeRotation()
 | 
						|
        UITestHelper.loginUser()
 | 
						|
        UITestHelper.skipWelcome()
 | 
						|
        Intents
 | 
						|
            .intending(CoreMatchers.not(IntentMatchers.isInternal()))
 | 
						|
            .respondWith(Instrumentation.ActivityResult(Activity.RESULT_OK, null))
 | 
						|
    }
 | 
						|
 | 
						|
    @After
 | 
						|
    fun teardown() {
 | 
						|
        try {
 | 
						|
            Intents.release()
 | 
						|
        } catch (ex: IllegalStateException) {
 | 
						|
        }
 | 
						|
    }
 | 
						|
 | 
						|
    @Test
 | 
						|
    fun uploadCancelledAfterLocationPickedTest() {
 | 
						|
        val bottomNavigationItemView =
 | 
						|
            onView(
 | 
						|
                allOf(
 | 
						|
                    childAtPosition(
 | 
						|
                        childAtPosition(
 | 
						|
                            withId(R.id.fragment_main_nav_tab_layout),
 | 
						|
                            0,
 | 
						|
                        ),
 | 
						|
                        1,
 | 
						|
                    ),
 | 
						|
                    isDisplayed(),
 | 
						|
                ),
 | 
						|
            )
 | 
						|
        bottomNavigationItemView.perform(click())
 | 
						|
 | 
						|
        UITestHelper.sleep(12000)
 | 
						|
 | 
						|
        val actionMenuItemView =
 | 
						|
            onView(
 | 
						|
                allOf(
 | 
						|
                    withId(R.id.list_sheet),
 | 
						|
                    childAtPosition(
 | 
						|
                        childAtPosition(
 | 
						|
                            withId(R.id.toolbar),
 | 
						|
                            1,
 | 
						|
                        ),
 | 
						|
                        0,
 | 
						|
                    ),
 | 
						|
                    isDisplayed(),
 | 
						|
                ),
 | 
						|
            )
 | 
						|
        actionMenuItemView.perform(click())
 | 
						|
 | 
						|
        val recyclerView =
 | 
						|
            onView(
 | 
						|
                allOf(
 | 
						|
                    withId(R.id.rv_nearby_list),
 | 
						|
                ),
 | 
						|
            )
 | 
						|
        recyclerView.perform(
 | 
						|
            RecyclerViewActions.actionOnItemAtPosition<RecyclerView.ViewHolder>(
 | 
						|
                0,
 | 
						|
                click(),
 | 
						|
            ),
 | 
						|
        )
 | 
						|
 | 
						|
        val linearLayout3 =
 | 
						|
            onView(
 | 
						|
                allOf(
 | 
						|
                    withId(R.id.cameraButton),
 | 
						|
                    childAtPosition(
 | 
						|
                        allOf(
 | 
						|
                            withId(R.id.nearby_button_layout),
 | 
						|
                        ),
 | 
						|
                        0,
 | 
						|
                    ),
 | 
						|
                    isDisplayed(),
 | 
						|
                ),
 | 
						|
            )
 | 
						|
        linearLayout3.perform(click())
 | 
						|
 | 
						|
        val pasteSensitiveTextInputEditText =
 | 
						|
            onView(
 | 
						|
                allOf(
 | 
						|
                    withId(R.id.caption_item_edit_text),
 | 
						|
                    childAtPosition(
 | 
						|
                        childAtPosition(
 | 
						|
                            withId(R.id.caption_item_edit_text_input_layout),
 | 
						|
                            0,
 | 
						|
                        ),
 | 
						|
                        0,
 | 
						|
                    ),
 | 
						|
                    isDisplayed(),
 | 
						|
                ),
 | 
						|
            )
 | 
						|
        pasteSensitiveTextInputEditText.perform(replaceText("test"), closeSoftKeyboard())
 | 
						|
 | 
						|
        val pasteSensitiveTextInputEditText2 =
 | 
						|
            onView(
 | 
						|
                allOf(
 | 
						|
                    withId(R.id.description_item_edit_text),
 | 
						|
                    childAtPosition(
 | 
						|
                        childAtPosition(
 | 
						|
                            withId(R.id.description_item_edit_text_input_layout),
 | 
						|
                            0,
 | 
						|
                        ),
 | 
						|
                        0,
 | 
						|
                    ),
 | 
						|
                    isDisplayed(),
 | 
						|
                ),
 | 
						|
            )
 | 
						|
        pasteSensitiveTextInputEditText2.perform(replaceText("test"), closeSoftKeyboard())
 | 
						|
 | 
						|
        val appCompatButton2 =
 | 
						|
            onView(
 | 
						|
                allOf(
 | 
						|
                    withId(R.id.btn_next),
 | 
						|
                    childAtPosition(
 | 
						|
                        childAtPosition(
 | 
						|
                            withId(R.id.ll_container_media_detail),
 | 
						|
                            2,
 | 
						|
                        ),
 | 
						|
                        1,
 | 
						|
                    ),
 | 
						|
                    isDisplayed(),
 | 
						|
                ),
 | 
						|
            )
 | 
						|
        appCompatButton2.perform(click())
 | 
						|
 | 
						|
        val appCompatButton3 =
 | 
						|
            onView(
 | 
						|
                allOf(
 | 
						|
                    withId(android.R.id.button1),
 | 
						|
                ),
 | 
						|
            )
 | 
						|
        appCompatButton3.perform(scrollTo(), click())
 | 
						|
 | 
						|
        Intents.intended(IntentMatchers.hasComponent(LocationPickerActivity::class.java.name))
 | 
						|
 | 
						|
        val floatingActionButton3 =
 | 
						|
            onView(
 | 
						|
                allOf(
 | 
						|
                    withId(R.id.location_chosen_button),
 | 
						|
                    isDisplayed(),
 | 
						|
                ),
 | 
						|
            )
 | 
						|
        UITestHelper.sleep(2000)
 | 
						|
        floatingActionButton3.perform(click())
 | 
						|
    }
 | 
						|
}
 |