Fixed #4908 : Thumbnail image is grey during upload (#4909)

* Fixed #4908 : Thumbnail image is grey during upload

* Test Added and minor changes
This commit is contained in:
Arin Modi 2022-03-21 18:55:20 +05:30 committed by GitHub
parent 4ba463c6b2
commit e58322ed63
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 54 additions and 4 deletions

View file

@ -10,7 +10,9 @@ import android.widget.RelativeLayout
import android.widget.TextView
import com.facebook.drawee.backends.pipeline.Fresco
import com.facebook.drawee.view.SimpleDraweeView
import com.facebook.imagepipeline.request.ImageRequest
import com.facebook.soloader.SoLoader
import com.nhaarman.mockitokotlin2.verify
import fr.free.nrw.commons.Media
import fr.free.nrw.commons.R
import fr.free.nrw.commons.TestCommonsApplication
@ -22,7 +24,8 @@ import org.junit.Before
import org.junit.Test
import org.junit.runner.RunWith
import org.mockito.Mock
import org.mockito.Mockito.`when`
import org.mockito.Mockito
import org.mockito.Mockito.*
import org.mockito.MockitoAnnotations
import org.powermock.reflect.Whitebox
import org.robolectric.Robolectric
@ -31,6 +34,7 @@ import org.robolectric.RuntimeEnvironment
import org.robolectric.Shadows
import org.robolectric.annotation.Config
import org.robolectric.annotation.LooperMode
import java.io.File
import java.lang.reflect.Method
@RunWith(RobolectricTestRunner::class)
@ -324,4 +328,36 @@ class ContributionViewHolderUnitTests {
contributionViewHolder.init(0, contribution)
}
@Test
@Throws(Exception::class)
fun testInitCaseImageSource_HttpURL() {
Shadows.shadowOf(Looper.getMainLooper()).idle()
`when`(contribution.media).thenReturn(media)
`when`(contribution.media.thumbUrl).thenReturn("https://demo/sample.png")
`when`(contribution.localUri).thenReturn(null)
contributionViewHolder.init(0, contribution)
Assert.assertNotNull(contributionViewHolder.imageRequest)
}
@Test
@Throws(Exception::class)
fun testInitCaseImageSource_NULL() {
Shadows.shadowOf(Looper.getMainLooper()).idle()
`when`(contribution.media).thenReturn(media)
`when`(contribution.media.thumbUrl).thenReturn(null)
`when`(contribution.localUri).thenReturn(null)
contributionViewHolder.init(0, contribution)
Assert.assertNull(contributionViewHolder.imageRequest)
}
@Test
@Throws(Exception::class)
fun testInitCaseImageSource_LocalUri() {
Shadows.shadowOf(Looper.getMainLooper()).idle()
`when`(contribution.media).thenReturn(media)
`when`(contribution.media.thumbUrl).thenReturn(null)
`when`(contribution.localUri).thenReturn(Uri.parse("/data/android/demo.png"))
contributionViewHolder.init(0, contribution)
Assert.assertNotNull(contributionViewHolder.imageRequest)
}
}