SendFilesDialogTest.kt 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. /*
  2. *
  3. * Nextcloud Android client application
  4. *
  5. * @author Tobias Kaminsky
  6. * Copyright (C) 2020 Tobias Kaminsky
  7. * Copyright (C) 2020 Nextcloud GmbH
  8. *
  9. * This program is free software: you can redistribute it and/or modify
  10. * it under the terms of the GNU Affero General Public License as published by
  11. * the Free Software Foundation, either version 3 of the License, or
  12. * (at your option) any later version.
  13. *
  14. * This program is distributed in the hope that it will be useful,
  15. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  16. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  17. * GNU Affero General Public License for more details.
  18. *
  19. * You should have received a copy of the GNU Affero General Public License
  20. * along with this program. If not, see <https://www.gnu.org/licenses/>.
  21. */
  22. package com.owncloud.android.ui.dialog
  23. import androidx.fragment.app.FragmentManager
  24. import androidx.test.espresso.intent.rule.IntentsTestRule
  25. import androidx.test.platform.app.InstrumentationRegistry
  26. import com.nextcloud.client.TestActivity
  27. import com.owncloud.android.AbstractIT
  28. import com.owncloud.android.datamodel.OCFile
  29. import com.owncloud.android.utils.ScreenshotTest
  30. import org.junit.Rule
  31. import org.junit.Test
  32. class SendFilesDialogTest : AbstractIT() {
  33. @get:Rule
  34. val testActivityRule = IntentsTestRule(TestActivity::class.java, true, false)
  35. @Test
  36. @ScreenshotTest
  37. fun showDialog() {
  38. val activity = testActivityRule.launchActivity(null)
  39. val fm: FragmentManager = activity.supportFragmentManager
  40. val ft = fm.beginTransaction()
  41. ft.addToBackStack(null)
  42. val files = setOf(
  43. OCFile("/1.jpg").apply {
  44. mimeType = "image/jpg"
  45. },
  46. OCFile("/2.jpg").apply {
  47. mimeType = "image/jpg"
  48. }
  49. )
  50. val sut = SendFilesDialog.newInstance(files)
  51. sut.show(ft, "TAG_SEND_SHARE_DIALOG")
  52. InstrumentationRegistry.getInstrumentation().waitForIdleSync()
  53. shortSleep()
  54. sut.requireDialog().window?.decorView.let { screenshot(it) }
  55. }
  56. }