Skip to content

Commit 2f4c304

Browse files
Update Test Dependency version (commons-app#4405)
* Update Version and Unit Test * fix failing tests * update robolectric
1 parent 117a780 commit 2f4c304

18 files changed

+122
-82
lines changed

app/build.gradle

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -79,18 +79,15 @@ dependencies {
7979
//Mocking
8080
testImplementation 'com.nhaarman.mockitokotlin2:mockito-kotlin:2.2.0'
8181
testImplementation 'org.mockito:mockito-inline:2.13.0'
82-
testImplementation 'org.mockito:mockito-core:2.23.0'
83-
testImplementation "org.powermock:powermock-module-junit4:2.0.0-beta.5"
84-
testImplementation "org.powermock:powermock-api-mockito2:2.0.0-beta.5"
82+
testImplementation 'org.mockito:mockito-core:2.25.1'
83+
testImplementation "org.powermock:powermock-module-junit4:2.0.2"
84+
testImplementation "org.powermock:powermock-api-mockito2:2.0.2"
8585

8686
// Unit testing
87-
testImplementation 'junit:junit:4.13.1'
88-
testImplementation 'org.robolectric:robolectric:4.3'
87+
testImplementation 'junit:junit:4.13.2'
88+
testImplementation 'org.robolectric:robolectric:4.5.1'
8989
testImplementation 'androidx.test:core:1.3.0'
9090
testImplementation "com.squareup.okhttp3:mockwebserver:$OKHTTP_VERSION"
91-
testImplementation "org.powermock:powermock-module-junit4:2.0.0-beta.5"
92-
testImplementation "org.powermock:powermock-api-mockito2:2.0.0-beta.5"
93-
testImplementation 'org.mockito:mockito-core:2.23.0'
9491
testImplementation "com.jraska.livedata:testing-ktx:1.1.2"
9592
testImplementation "androidx.arch.core:core-testing:2.1.0"
9693
testImplementation "org.junit.jupiter:junit-jupiter-api:5.3.1"

app/src/test/kotlin/fr/free/nrw/commons/bookmarks/pictures/BookmarkPicturesFragmentUnitTests.kt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ package fr.free.nrw.commons.bookmarks.pictures
33
import android.content.ContentProviderClient
44
import android.content.Context
55
import android.os.Bundle
6+
import android.os.Looper.getMainLooper
67
import android.view.LayoutInflater
78
import android.view.View
89
import android.widget.GridView
@@ -28,13 +29,16 @@ import org.powermock.reflect.Whitebox
2829
import org.robolectric.Robolectric
2930
import org.robolectric.RobolectricTestRunner
3031
import org.robolectric.RuntimeEnvironment
32+
import org.robolectric.Shadows.shadowOf
3133
import org.robolectric.annotation.Config
34+
import org.robolectric.annotation.LooperMode
3235
import org.wikipedia.AppAdapter
3336
import java.lang.reflect.Method
3437

3538

3639
@RunWith(RobolectricTestRunner::class)
3740
@Config(sdk = [21], application = TestCommonsApplication::class)
41+
@LooperMode(LooperMode.Mode.PAUSED)
3842
class BookmarkPicturesFragmentUnitTests {
3943

4044
private lateinit var fragment: BookmarkPicturesFragment
@@ -134,6 +138,7 @@ class BookmarkPicturesFragmentUnitTests {
134138
@Test
135139
@Throws(Exception::class)
136140
fun testSetAdapter() {
141+
shadowOf(getMainLooper()).idle()
137142
val method: Method =
138143
BookmarkPicturesFragment::class.java.getDeclaredMethod("setAdapter", List::class.java)
139144
method.isAccessible = true

app/src/test/kotlin/fr/free/nrw/commons/explore/PagingDataSourceFactoryTest.kt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@ import fr.free.nrw.commons.explore.paging.LoadingState
88
import fr.free.nrw.commons.explore.paging.PagingDataSource
99
import fr.free.nrw.commons.explore.paging.PagingDataSourceFactory
1010
import io.reactivex.processors.PublishProcessor
11-
import org.hamcrest.MatcherAssert.assertThat
12-
import org.hamcrest.Matchers.instanceOf
11+
import org.hamcrest.CoreMatchers.instanceOf
12+
import org.junit.Assert
1313
import org.junit.Before
1414
import org.junit.Ignore
1515
import org.junit.Test
@@ -38,7 +38,7 @@ class PagingDataSourceFactoryTest {
3838

3939
@Test
4040
fun `create returns a dataSource`() {
41-
assertThat(
41+
Assert.assertThat(
4242
factory.create(),
4343
instanceOf(PagingDataSource::class.java)
4444
)
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,11 @@
1-
package fr.free.nrw.commons.explore.categroies
1+
package fr.free.nrw.commons.explore.categories
22

33
import com.nhaarman.mockitokotlin2.mock
44
import com.nhaarman.mockitokotlin2.whenever
55
import fr.free.nrw.commons.category.CategoryClient
66
import fr.free.nrw.commons.explore.categories.search.PageableSearchCategoriesDataSource
77
import io.reactivex.Single
8-
import org.hamcrest.MatcherAssert.assertThat
9-
import org.hamcrest.Matchers
8+
import org.junit.Assert
109
import org.junit.Test
1110

1211
class PageableSearchCategoriesDataSourceTest {
@@ -18,6 +17,6 @@ class PageableSearchCategoriesDataSourceTest {
1817
val pageableCategoriesDataSource =
1918
PageableSearchCategoriesDataSource(mock(), categoryClient)
2019
pageableCategoriesDataSource.onQueryUpdated("test")
21-
assertThat(pageableCategoriesDataSource.loadFunction(0, 1), Matchers.`is`(emptyList()))
20+
Assert.assertEquals(pageableCategoriesDataSource.loadFunction(0, 1), emptyList<String>())
2221
}
2322
}

app/src/test/kotlin/fr/free/nrw/commons/explore/categories/media/PageableCategoriesMediaDataSourceTest.kt

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,7 @@ import com.nhaarman.mockitokotlin2.whenever
66
import fr.free.nrw.commons.explore.paging.LiveDataConverter
77
import fr.free.nrw.commons.media.MediaClient
88
import io.reactivex.Single
9-
import org.hamcrest.CoreMatchers.`is`
10-
import org.hamcrest.MatcherAssert.assertThat
9+
import org.junit.Assert
1110
import org.junit.Before
1211
import org.junit.Test
1312
import org.mockito.Mock
@@ -32,7 +31,7 @@ class PageableCategoriesMediaDataSourceTest {
3231
dataSource.onQueryUpdated("test")
3332
whenever(mediaClient.getMediaListFromCategory("test"))
3433
.thenReturn(Single.just(emptyList()))
35-
assertThat(dataSource.loadFunction(-1, 0), `is`(emptyList()))
34+
Assert.assertEquals(dataSource.loadFunction(-1, 0), emptyList<String>())
3635
verify(mediaClient).resetCategoryContinuation("test")
3736
}
3837

@@ -43,7 +42,7 @@ class PageableCategoriesMediaDataSourceTest {
4342
dataSource.onQueryUpdated("test")
4443
whenever(mediaClient.getMediaListFromCategory("test"))
4544
.thenReturn(Single.just(emptyList()))
46-
assertThat(dataSource.loadFunction(-1, 1), `is`(emptyList()))
45+
Assert.assertEquals(dataSource.loadFunction(-1, 1), emptyList<String>())
4746
verify(mediaClient, never()).resetCategoryContinuation("test")
4847
}
4948
}

app/src/test/kotlin/fr/free/nrw/commons/explore/categories/parent/PageableParentCategoriesDataSourceTest.kt

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,7 @@ import com.nhaarman.mockitokotlin2.whenever
66
import fr.free.nrw.commons.category.CategoryClient
77
import fr.free.nrw.commons.explore.paging.LiveDataConverter
88
import io.reactivex.Single
9-
import org.hamcrest.CoreMatchers.`is`
10-
import org.hamcrest.MatcherAssert.assertThat
9+
import org.junit.Assert
1110
import org.junit.Before
1211
import org.junit.Test
1312
import org.mockito.Mock
@@ -31,7 +30,7 @@ class PageableParentCategoriesDataSourceTest{
3130
dataSource.onQueryUpdated("test")
3231
whenever(categoryClient.getParentCategoryList("test"))
3332
.thenReturn(Single.just(emptyList()))
34-
assertThat(dataSource.loadFunction(-1, 0), `is`(emptyList()))
33+
Assert.assertEquals(dataSource.loadFunction(-1, 0), emptyList<String>())
3534
verify(categoryClient).resetParentCategoryContinuation("test")
3635
}
3736

@@ -42,7 +41,7 @@ class PageableParentCategoriesDataSourceTest{
4241
dataSource.onQueryUpdated("test")
4342
whenever(categoryClient.getParentCategoryList("test"))
4443
.thenReturn(Single.just(emptyList()))
45-
assertThat(dataSource.loadFunction(-1, 1), `is`(emptyList()))
44+
Assert.assertEquals(dataSource.loadFunction(-1, 1), emptyList<String>())
4645
verify(categoryClient, never()).resetParentCategoryContinuation("test")
4746
}
4847
}

app/src/test/kotlin/fr/free/nrw/commons/explore/categories/sub/PageableSubCategoriesDataSourceTest.kt

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,7 @@ import com.nhaarman.mockitokotlin2.whenever
66
import fr.free.nrw.commons.category.CategoryClient
77
import fr.free.nrw.commons.explore.paging.LiveDataConverter
88
import io.reactivex.Single
9-
import org.hamcrest.CoreMatchers.`is`
10-
import org.hamcrest.MatcherAssert.assertThat
9+
import org.junit.Assert
1110
import org.junit.Before
1211
import org.junit.Test
1312
import org.mockito.Mock
@@ -31,7 +30,7 @@ class PageableSubCategoriesDataSourceTest{
3130
dataSource.onQueryUpdated("test")
3231
whenever(categoryClient.getSubCategoryList("test"))
3332
.thenReturn(Single.just(emptyList()))
34-
assertThat(dataSource.loadFunction(-1, 0), `is`(emptyList()))
33+
Assert.assertEquals(dataSource.loadFunction(-1, 0), emptyList<String>())
3534
verify(categoryClient).resetSubCategoryContinuation("test")
3635
}
3736

@@ -42,7 +41,7 @@ class PageableSubCategoriesDataSourceTest{
4241
dataSource.onQueryUpdated("test")
4342
whenever(categoryClient.getSubCategoryList("test"))
4443
.thenReturn(Single.just(emptyList()))
45-
assertThat(dataSource.loadFunction(-1, 1), `is`(emptyList()))
44+
Assert.assertEquals(dataSource.loadFunction(-1, 1), emptyList<String>())
4645
verify(categoryClient, never()).resetSubCategoryContinuation("test")
4746
}
4847
}

app/src/test/kotlin/fr/free/nrw/commons/explore/depictions/PageableDepictionsDataSourceTest.kt

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,7 @@ import com.nhaarman.mockitokotlin2.mock
44
import com.nhaarman.mockitokotlin2.whenever
55
import fr.free.nrw.commons.explore.depictions.search.PageableDepictionsDataSource
66
import io.reactivex.Single
7-
import org.hamcrest.MatcherAssert.assertThat
8-
import org.hamcrest.Matchers
7+
import org.junit.Assert
98
import org.junit.Test
109

1110
class PageableDepictionsDataSourceTest {
@@ -17,9 +16,9 @@ class PageableDepictionsDataSourceTest {
1716
.thenReturn(Single.just(emptyList()))
1817
val pageableDepictionsDataSource = PageableDepictionsDataSource(mock(), depictsClient)
1918
pageableDepictionsDataSource.onQueryUpdated("test")
20-
assertThat(
19+
Assert.assertEquals(
2120
pageableDepictionsDataSource.loadFunction.invoke(0, 1),
22-
Matchers.`is`(emptyList())
21+
emptyList<String>()
2322
)
2423
}
2524
}

app/src/test/kotlin/fr/free/nrw/commons/explore/depictions/child/PageableChildDepictionsDataSourceTest.kt

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,7 @@ import depictedItem
55
import fr.free.nrw.commons.explore.paging.LiveDataConverter
66
import fr.free.nrw.commons.mwapi.OkHttpJsonApiClient
77
import io.reactivex.Single
8-
import org.hamcrest.CoreMatchers.`is`
9-
import org.hamcrest.MatcherAssert.assertThat
8+
import org.junit.Assert
109
import org.junit.Before
1110
import org.junit.Test
1211
import org.mockito.Mock
@@ -30,6 +29,6 @@ class PageableChildDepictionsDataSourceTest {
3029
dataSource.onQueryUpdated("test")
3130
whenever(okHttpJsonApiClient.getChildDepictions("test", 0, 1))
3231
.thenReturn(Single.just(listOf(depictedItem())))
33-
assertThat(dataSource.loadFunction(1, 0), `is`(listOf(depictedItem())))
32+
Assert.assertEquals(dataSource.loadFunction(1, 0), listOf(depictedItem()))
3433
}
3534
}

app/src/test/kotlin/fr/free/nrw/commons/explore/depictions/media/PageableDepictedMediaDataSourceTest.kt

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,7 @@ import com.nhaarman.mockitokotlin2.mock
44
import com.nhaarman.mockitokotlin2.whenever
55
import fr.free.nrw.commons.media.MediaClient
66
import io.reactivex.Single
7-
import org.hamcrest.MatcherAssert.assertThat
8-
import org.hamcrest.Matchers.`is`
7+
import org.junit.Assert
98
import org.junit.Test
109

1110
class PageableDepictedMediaDataSourceTest{
@@ -16,6 +15,6 @@ class PageableDepictedMediaDataSourceTest{
1615
.thenReturn(Single.just(emptyList()))
1716
val pageableDepictedMediaDataSource = PageableDepictedMediaDataSource(mock(), mediaClient)
1817
pageableDepictedMediaDataSource.onQueryUpdated("test")
19-
assertThat(pageableDepictedMediaDataSource.loadFunction(0,1), `is`(emptyList()))
18+
Assert.assertEquals(pageableDepictedMediaDataSource.loadFunction(0,1), emptyList<String>())
2019
}
2120
}

app/src/test/kotlin/fr/free/nrw/commons/explore/depictions/parent/PageableParentDepictionsDataSourceTest.kt

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,7 @@ import depictedItem
55
import fr.free.nrw.commons.explore.paging.LiveDataConverter
66
import fr.free.nrw.commons.mwapi.OkHttpJsonApiClient
77
import io.reactivex.Single
8-
import org.hamcrest.CoreMatchers.`is`
9-
import org.hamcrest.MatcherAssert.assertThat
8+
import org.junit.Assert
109
import org.junit.Before
1110
import org.junit.Test
1211
import org.mockito.Mock
@@ -31,7 +30,7 @@ class PageableParentDepictionsDataSourceTest {
3130
dataSource.onQueryUpdated("test")
3231
whenever(okHttpJsonApiClient.getParentDepictions("test", 0, 1))
3332
.thenReturn(Single.just(listOf(depictedItem())))
34-
assertThat(dataSource.loadFunction(1, 0), `is`(listOf(depictedItem())))
33+
Assert.assertEquals(dataSource.loadFunction(1, 0), listOf(depictedItem()))
3534
}
3635
}
3736

app/src/test/kotlin/fr/free/nrw/commons/explore/media/PageableMediaDataSourceTest.kt

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,7 @@ import com.nhaarman.mockitokotlin2.mock
44
import com.nhaarman.mockitokotlin2.whenever
55
import fr.free.nrw.commons.media.MediaClient
66
import io.reactivex.Single
7-
import org.hamcrest.MatcherAssert.assertThat
8-
import org.hamcrest.Matchers.`is`
7+
import org.junit.Assert
98
import org.junit.Before
109
import org.junit.Test
1110
import org.mockito.Mock
@@ -28,6 +27,6 @@ class PageableMediaDataSourceTest {
2827
.thenReturn(Single.just(emptyList()))
2928
val pageableMediaDataSource = PageableMediaDataSource(mock(), mediaClient)
3029
pageableMediaDataSource.onQueryUpdated("test")
31-
assertThat(pageableMediaDataSource.loadFunction(0,1), `is`(emptyList()))
30+
Assert.assertEquals(pageableMediaDataSource.loadFunction(0,1), emptyList<String>())
3231
}
3332
}

app/src/test/kotlin/fr/free/nrw/commons/media/MediaDetailPagerFragmentUnitTests.kt

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package fr.free.nrw.commons.media
22

33
import android.content.Context
44
import android.os.Bundle
5+
import android.os.Looper
56
import androidx.fragment.app.FragmentManager
67
import androidx.fragment.app.FragmentTransaction
78
import com.facebook.drawee.backends.pipeline.Fresco
@@ -23,13 +24,16 @@ import org.mockito.MockitoAnnotations
2324
import org.robolectric.Robolectric
2425
import org.robolectric.RobolectricTestRunner
2526
import org.robolectric.RuntimeEnvironment
27+
import org.robolectric.Shadows
2628
import org.robolectric.annotation.Config
29+
import org.robolectric.annotation.LooperMode
2730
import org.wikipedia.AppAdapter
2831
import java.lang.reflect.Field
2932
import java.lang.reflect.Method
3033

3134
@RunWith(RobolectricTestRunner::class)
3235
@Config(sdk = [21], application = TestCommonsApplication::class)
36+
@LooperMode(LooperMode.Mode.PAUSED)
3337
class MediaDetailPagerFragmentUnitTests {
3438

3539
private lateinit var fragment: MediaDetailPagerFragment
@@ -98,6 +102,7 @@ class MediaDetailPagerFragmentUnitTests {
98102
@Test
99103
@Throws(Exception::class)
100104
fun testOnCreateSaveInstanceNotNull() {
105+
Shadows.shadowOf(Looper.getMainLooper()).idle()
101106
fragment.onCreate(outState)
102107
}
103108

@@ -121,6 +126,7 @@ class MediaDetailPagerFragmentUnitTests {
121126
@Test
122127
@Throws(Exception::class)
123128
fun testSetWallpaperCaseNonNull() {
129+
Shadows.shadowOf(Looper.getMainLooper()).idle()
124130
`when`(media.imageUrl).thenReturn("url")
125131
val method: Method = MediaDetailPagerFragment::class.java.getDeclaredMethod(
126132
"setWallpaper",

app/src/test/kotlin/fr/free/nrw/commons/navtab/MoreBottomSheetFragmentUnitTests.kt

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package fr.free.nrw.commons.navtab
22

33
import android.content.Context
4+
import android.os.Looper
45
import androidx.fragment.app.FragmentManager
56
import androidx.fragment.app.FragmentTransaction
67
import fr.free.nrw.commons.TestCommonsApplication
@@ -12,10 +13,13 @@ import org.junit.runner.RunWith
1213
import org.robolectric.Robolectric
1314
import org.robolectric.RobolectricTestRunner
1415
import org.robolectric.RuntimeEnvironment
16+
import org.robolectric.Shadows
1517
import org.robolectric.annotation.Config
18+
import org.robolectric.annotation.LooperMode
1619

1720
@RunWith(RobolectricTestRunner::class)
1821
@Config(sdk = [21], application = TestCommonsApplication::class)
22+
@LooperMode(LooperMode.Mode.PAUSED)
1923
class MoreBottomSheetFragmentUnitTests {
2024

2125
private lateinit var fragment: MoreBottomSheetFragment
@@ -45,48 +49,56 @@ class MoreBottomSheetFragmentUnitTests {
4549
@Test
4650
@Throws(Exception::class)
4751
fun testOnAttach() {
52+
Shadows.shadowOf(Looper.getMainLooper()).idle()
4853
fragment.onAttach(context)
4954
}
5055

5156
@Test
5257
@Throws(Exception::class)
5358
fun testOnLogoutClicked() {
59+
Shadows.shadowOf(Looper.getMainLooper()).idle()
5460
fragment.onLogoutClicked()
5561
}
5662

5763
@Test
5864
@Throws(Exception::class)
5965
fun testOnFeedbackClicked() {
66+
Shadows.shadowOf(Looper.getMainLooper()).idle()
6067
fragment.onFeedbackClicked()
6168
}
6269

6370
@Test
6471
@Throws(Exception::class)
6572
fun testOnAboutClicked() {
73+
Shadows.shadowOf(Looper.getMainLooper()).idle()
6674
fragment.onAboutClicked()
6775
}
6876

6977
@Test
7078
@Throws(Exception::class)
7179
fun testOnTutorialClicked() {
80+
Shadows.shadowOf(Looper.getMainLooper()).idle()
7281
fragment.onTutorialClicked()
7382
}
7483

7584
@Test
7685
@Throws(Exception::class)
7786
fun testOnSettingsClicked() {
87+
Shadows.shadowOf(Looper.getMainLooper()).idle()
7888
fragment.onSettingsClicked()
7989
}
8090

8191
@Test
8292
@Throws(Exception::class)
8393
fun testOnProfileClicked() {
94+
Shadows.shadowOf(Looper.getMainLooper()).idle()
8495
fragment.onProfileClicked()
8596
}
8697

8798
@Test
8899
@Throws(Exception::class)
89100
fun testOnPeerReviewClicked() {
101+
Shadows.shadowOf(Looper.getMainLooper()).idle()
90102
fragment.onPeerReviewClicked()
91103
}
92104

0 commit comments

Comments
 (0)