Refactor FilePicker.java intent result handling (#5851)

* remove unnecessary video flag check

Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>

* handle when custom selector operation cancelled

Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>

* dispatch appropriate request code to handle using respective callbacks

Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>

* remove wrong control statements

Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>

* refactor gallery picker test

Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>

---------

Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
This commit is contained in:
Parneet Singh 2024-10-16 07:50:00 +05:30 committed by GitHub
parent 95e0a0d143
commit f889ed1821
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 18 additions and 38 deletions

View file

@ -64,12 +64,17 @@ class FilePickerTest {
`when`(PreferenceManager.getDefaultSharedPreferences(activity)).thenReturn(sharedPref)
`when`(sharedPref.edit()).thenReturn(sharedPreferencesEditor)
`when`(sharedPref.edit().putInt("type", 0)).thenReturn(sharedPreferencesEditor)
FilePicker.openGallery(activity, 0, nextBoolean())
val openDocumentPreferred = nextBoolean()
FilePicker.openGallery(activity, 0, openDocumentPreferred)
verify(activity).startActivityForResult(
ArgumentMatchers.any(),
requestCodeCaptor?.capture()?.toInt()!!,
)
assertEquals(requestCodeCaptor?.value, RequestCodes.PICK_PICTURE_FROM_GALLERY)
if(openDocumentPreferred){
assertEquals(requestCodeCaptor?.value, RequestCodes.PICK_PICTURE_FROM_DOCUMENTS)
}else{
assertEquals(requestCodeCaptor?.value, RequestCodes.PICK_PICTURE_FROM_GALLERY)
}
}
@Test
@ -165,32 +170,6 @@ class FilePickerTest {
method.invoke(mockFilePicker, activity)
}
@Test
fun testTakenCameraVideo() {
val mockFilePicker = mock(FilePicker::class.java)
val method: Method =
FilePicker::class.java.getDeclaredMethod(
"takenCameraVideo",
Context::class.java,
)
method.isAccessible = true
method.invoke(mockFilePicker, context)
}
@Test
fun testTakenCameraVideoCaseTrue() {
val mockFilePicker = mock(FilePicker::class.java)
`when`(PreferenceManager.getDefaultSharedPreferences(activity)).thenReturn(sharedPref)
`when`(sharedPref.getString("last_video", null)).thenReturn("")
val method: Method =
FilePicker::class.java.getDeclaredMethod(
"takenCameraVideo",
Context::class.java,
)
method.isAccessible = true
method.invoke(mockFilePicker, activity)
}
@Test
fun testIsPhoto() {
val mockFilePicker = mock(FilePicker::class.java)