@@ -10,7 +10,9 @@ import android.widget.RelativeLayout
1010import android.widget.TextView
1111import com.facebook.drawee.backends.pipeline.Fresco
1212import com.facebook.drawee.view.SimpleDraweeView
13+ import com.facebook.imagepipeline.request.ImageRequest
1314import com.facebook.soloader.SoLoader
15+ import com.nhaarman.mockitokotlin2.verify
1416import fr.free.nrw.commons.Media
1517import fr.free.nrw.commons.R
1618import fr.free.nrw.commons.TestCommonsApplication
@@ -22,7 +24,8 @@ import org.junit.Before
2224import org.junit.Test
2325import org.junit.runner.RunWith
2426import org.mockito.Mock
25- import org.mockito.Mockito.`when`
27+ import org.mockito.Mockito
28+ import org.mockito.Mockito.*
2629import org.mockito.MockitoAnnotations
2730import org.powermock.reflect.Whitebox
2831import org.robolectric.Robolectric
@@ -31,6 +34,7 @@ import org.robolectric.RuntimeEnvironment
3134import org.robolectric.Shadows
3235import org.robolectric.annotation.Config
3336import org.robolectric.annotation.LooperMode
37+ import java.io.File
3438import java.lang.reflect.Method
3539
3640@RunWith(RobolectricTestRunner ::class )
@@ -324,4 +328,36 @@ class ContributionViewHolderUnitTests {
324328 contributionViewHolder.init (0 , contribution)
325329 }
326330
331+ @Test
332+ @Throws(Exception ::class )
333+ fun testInitCaseImageSource_HttpURL () {
334+ Shadows .shadowOf(Looper .getMainLooper()).idle()
335+ `when `(contribution.media).thenReturn(media)
336+ `when `(contribution.media.thumbUrl).thenReturn(" https://demo/sample.png" )
337+ `when `(contribution.localUri).thenReturn(null )
338+ contributionViewHolder.init (0 , contribution)
339+ Assert .assertNotNull(contributionViewHolder.imageRequest)
340+ }
341+
342+ @Test
343+ @Throws(Exception ::class )
344+ fun testInitCaseImageSource_NULL () {
345+ Shadows .shadowOf(Looper .getMainLooper()).idle()
346+ `when `(contribution.media).thenReturn(media)
347+ `when `(contribution.media.thumbUrl).thenReturn(null )
348+ `when `(contribution.localUri).thenReturn(null )
349+ contributionViewHolder.init (0 , contribution)
350+ Assert .assertNull(contributionViewHolder.imageRequest)
351+ }
352+
353+ @Test
354+ @Throws(Exception ::class )
355+ fun testInitCaseImageSource_LocalUri () {
356+ Shadows .shadowOf(Looper .getMainLooper()).idle()
357+ `when `(contribution.media).thenReturn(media)
358+ `when `(contribution.media.thumbUrl).thenReturn(null )
359+ `when `(contribution.localUri).thenReturn(Uri .parse(" /data/android/demo.png" ))
360+ contributionViewHolder.init (0 , contribution)
361+ Assert .assertNotNull(contributionViewHolder.imageRequest)
362+ }
327363}
0 commit comments