@@ -10,7 +10,9 @@ import android.widget.RelativeLayout
10
10
import android.widget.TextView
11
11
import com.facebook.drawee.backends.pipeline.Fresco
12
12
import com.facebook.drawee.view.SimpleDraweeView
13
+ import com.facebook.imagepipeline.request.ImageRequest
13
14
import com.facebook.soloader.SoLoader
15
+ import com.nhaarman.mockitokotlin2.verify
14
16
import fr.free.nrw.commons.Media
15
17
import fr.free.nrw.commons.R
16
18
import fr.free.nrw.commons.TestCommonsApplication
@@ -22,7 +24,8 @@ import org.junit.Before
22
24
import org.junit.Test
23
25
import org.junit.runner.RunWith
24
26
import org.mockito.Mock
25
- import org.mockito.Mockito.`when`
27
+ import org.mockito.Mockito
28
+ import org.mockito.Mockito.*
26
29
import org.mockito.MockitoAnnotations
27
30
import org.powermock.reflect.Whitebox
28
31
import org.robolectric.Robolectric
@@ -31,6 +34,7 @@ import org.robolectric.RuntimeEnvironment
31
34
import org.robolectric.Shadows
32
35
import org.robolectric.annotation.Config
33
36
import org.robolectric.annotation.LooperMode
37
+ import java.io.File
34
38
import java.lang.reflect.Method
35
39
36
40
@RunWith(RobolectricTestRunner ::class )
@@ -324,4 +328,36 @@ class ContributionViewHolderUnitTests {
324
328
contributionViewHolder.init (0 , contribution)
325
329
}
326
330
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
+ }
327
363
}
0 commit comments