Skip to content

Commit 67e43ef

Browse files
domdomeggmaskaravivek
authored andcommitted
Upgrade to Robolectric 4 (commons-app#2982)
1 parent 230b952 commit 67e43ef

15 files changed

+22
-21
lines changed

app/build.gradle

+2-1
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,8 @@ dependencies {
6060
testImplementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$KOTLIN_VERSION"
6161
testImplementation "org.jetbrains.kotlin:kotlin-reflect:$KOTLIN_VERSION"
6262
testImplementation 'junit:junit:4.12'
63-
testImplementation 'org.robolectric:robolectric:3.7.1'
63+
testImplementation 'org.robolectric:robolectric:4.3'
64+
testImplementation 'androidx.test:core:1.2.0'
6465
testImplementation 'com.nhaarman:mockito-kotlin:1.5.0'
6566
testImplementation 'com.squareup.okhttp3:mockwebserver:3.10.0'
6667

app/src/test/kotlin/fr/free/nrw/commons/MediaDataExtractorTest.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import fr.free.nrw.commons.mwapi.MediaResult
44
import fr.free.nrw.commons.mwapi.MediaWikiApi
55
import fr.free.nrw.commons.mwapi.OkHttpJsonApiClient
66
import io.reactivex.Single
7-
import junit.framework.Assert.assertTrue
7+
import org.junit.Assert.assertTrue
88
import org.junit.Before
99
import org.junit.Test
1010
import org.mockito.ArgumentMatchers

app/src/test/kotlin/fr/free/nrw/commons/MediaTest.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import org.robolectric.RobolectricTestRunner
77
import org.robolectric.annotation.Config
88

99
@RunWith(RobolectricTestRunner::class)
10-
@Config(constants = BuildConfig::class, sdk = intArrayOf(21), application = TestCommonsApplication::class)
10+
@Config(sdk = [21], application = TestCommonsApplication::class)
1111
class MediaTest {
1212
@Test
1313
fun displayTitleShouldStripExtension() {

app/src/test/kotlin/fr/free/nrw/commons/NearbyControllerTest.kt

+4-4
Original file line numberDiff line numberDiff line change
@@ -2,23 +2,23 @@ package fr.free.nrw.commons
22

33
import fr.free.nrw.commons.location.LatLng
44
import fr.free.nrw.commons.nearby.NearbyController.loadAttractionsFromLocationToBaseMarkerOptions
5+
import androidx.test.core.app.ApplicationProvider
56
import org.junit.Assert.assertEquals
67
import org.junit.Test
78
import org.junit.runner.RunWith
89
import org.robolectric.RobolectricTestRunner
9-
import org.robolectric.RuntimeEnvironment
1010
import org.robolectric.annotation.Config
1111

1212
@RunWith(RobolectricTestRunner::class)
13-
@Config(constants = BuildConfig::class, sdk = [21], application = TestCommonsApplication::class)
13+
@Config(sdk = [21], application = TestCommonsApplication::class)
1414
class NearbyControllerTest {
1515

1616
@Test
1717
fun testNullAttractions() {
1818
val location = LatLng(0.0, 0.0, 0f)
1919

2020
val options = loadAttractionsFromLocationToBaseMarkerOptions(
21-
location, null, RuntimeEnvironment.application, null)
21+
location, null, ApplicationProvider.getApplicationContext(), null)
2222

2323
assertEquals(0, options.size.toLong())
2424
}
@@ -28,7 +28,7 @@ class NearbyControllerTest {
2828
val location = LatLng(0.0, 0.0, 0f)
2929

3030
val options = loadAttractionsFromLocationToBaseMarkerOptions(
31-
location, emptyList(), RuntimeEnvironment.application, emptyList())
31+
location, emptyList(), ApplicationProvider.getApplicationContext(), emptyList())
3232

3333
assertEquals(0, options.size.toLong())
3434
}

app/src/test/kotlin/fr/free/nrw/commons/bookmarks/locations/BookMarkLocationDaoTest.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ import org.robolectric.RobolectricTestRunner
2424
import org.robolectric.annotation.Config
2525

2626
@RunWith(RobolectricTestRunner::class)
27-
@Config(constants = BuildConfig::class, sdk = [21], application = TestCommonsApplication::class)
27+
@Config(sdk = [21], application = TestCommonsApplication::class)
2828
class BookMarkLocationDaoTest {
2929
private val columns = arrayOf(COLUMN_NAME,
3030
COLUMN_DESCRIPTION,

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

+1-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ import org.junit.Before
2121
import org.junit.Test
2222

2323
@RunWith(RobolectricTestRunner::class)
24-
@Config(constants = BuildConfig::class, sdk = [21], application = TestCommonsApplication::class)
24+
@Config(sdk = [21], application = TestCommonsApplication::class)
2525
class BookmarkPictureDaoTest {
2626

2727
private val columns = arrayOf(COLUMN_MEDIA_NAME, COLUMN_CREATOR)

app/src/test/kotlin/fr/free/nrw/commons/category/CategoryDaoTest.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ import org.robolectric.annotation.Config
2121
import java.util.*
2222

2323
@RunWith(RobolectricTestRunner::class)
24-
@Config(constants = BuildConfig::class, sdk = [21], application = TestCommonsApplication::class)
24+
@Config(sdk = [21], application = TestCommonsApplication::class)
2525
class CategoryDaoTest {
2626

2727
private val columns = arrayOf(COLUMN_ID, COLUMN_NAME, COLUMN_LAST_USED, COLUMN_TIMES_USED)

app/src/test/kotlin/fr/free/nrw/commons/contributions/ContributionDaoTest.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ import org.robolectric.annotation.Config
2323
import java.util.*
2424

2525
@RunWith(RobolectricTestRunner::class)
26-
@Config(constants = BuildConfig::class, sdk = [21], application = TestCommonsApplication::class)
26+
@Config(sdk = [21], application = TestCommonsApplication::class)
2727
class ContributionDaoTest {
2828
private val localUri = "http://example.com/"
2929
private val client: ContentProviderClient = mock()

app/src/test/kotlin/fr/free/nrw/commons/delete/DeleteHelperTest.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import fr.free.nrw.commons.auth.SessionManager
77
import fr.free.nrw.commons.mwapi.MediaWikiApi
88
import fr.free.nrw.commons.notification.NotificationHelper
99
import fr.free.nrw.commons.utils.ViewUtilWrapper
10-
import junit.framework.Assert.*
10+
import org.junit.Assert.*
1111
import org.junit.Before
1212
import org.junit.Test
1313
import org.mockito.InjectMocks

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

+1-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ import org.robolectric.annotation.Config
2121
import java.util.*
2222

2323
@RunWith(RobolectricTestRunner::class)
24-
@Config(constants = BuildConfig::class, sdk = [21], application = TestCommonsApplication::class)
24+
@Config(sdk = [21], application = TestCommonsApplication::class)
2525
class RecentSearchesDaoTest {
2626

2727
private val columns = arrayOf(COLUMN_ID, COLUMN_NAME, COLUMN_LAST_USED)

app/src/test/kotlin/fr/free/nrw/commons/modifications/ModifierSequenceDaoTest.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ import org.robolectric.RobolectricTestRunner
2020
import org.robolectric.annotation.Config
2121

2222
@RunWith(RobolectricTestRunner::class)
23-
@Config(constants = BuildConfig::class, sdk = [21], application = TestCommonsApplication::class)
23+
@Config(sdk = [21], application = TestCommonsApplication::class)
2424
class ModifierSequenceDaoTest {
2525

2626
private val mediaUrl = "http://example.com/"

app/src/test/kotlin/fr/free/nrw/commons/mwapi/ApacheHttpClientMediaWikiApiTest.kt

+4-5
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
package fr.free.nrw.commons.mwapi
22

33
import android.os.Build
4+
import androidx.test.core.app.ApplicationProvider
45
import com.google.gson.Gson
5-
import fr.free.nrw.commons.BuildConfig
66
import fr.free.nrw.commons.TestCommonsApplication
77
import fr.free.nrw.commons.kvstore.JsonKvStore
88
import fr.free.nrw.commons.utils.ConfigUtils
@@ -17,14 +17,13 @@ import org.junit.Test
1717
import org.junit.runner.RunWith
1818
import org.mockito.Mockito.mock
1919
import org.robolectric.RobolectricTestRunner
20-
import org.robolectric.RuntimeEnvironment
2120
import org.robolectric.annotation.Config
2221
import org.wikipedia.util.DateUtil
2322
import java.net.URLDecoder
2423
import java.util.*
2524

2625
@RunWith(RobolectricTestRunner::class)
27-
@Config(constants = BuildConfig::class, sdk = intArrayOf(21), application = TestCommonsApplication::class)
26+
@Config(sdk = [21], application = TestCommonsApplication::class)
2827
class ApacheHttpClientMediaWikiApiTest {
2928

3029
private lateinit var testObject: ApacheHttpClientMediaWikiApi
@@ -39,7 +38,7 @@ class ApacheHttpClientMediaWikiApiTest {
3938
wikidataServer = MockWebServer()
4039
okHttpClient = OkHttpClient()
4140
sharedPreferences = mock(JsonKvStore::class.java)
42-
testObject = ApacheHttpClientMediaWikiApi(RuntimeEnvironment.application, "http://" + server.hostName + ":" + server.port + "/", "http://" + wikidataServer.hostName + ":" + wikidataServer.port + "/", sharedPreferences, Gson())
41+
testObject = ApacheHttpClientMediaWikiApi(ApplicationProvider.getApplicationContext(), "http://" + server.hostName + ":" + server.port + "/", "http://" + wikidataServer.hostName + ":" + wikidataServer.port + "/", sharedPreferences, Gson())
4342
}
4443

4544
@After
@@ -319,7 +318,7 @@ class ApacheHttpClientMediaWikiApiTest {
319318
private fun assertBasicRequestParameters(server: MockWebServer, method: String): RecordedRequest = server.takeRequest().let {
320319
assertEquals("/", it.requestUrl.encodedPath())
321320
assertEquals(method, it.method)
322-
assertEquals("Commons/${ConfigUtils.getVersionNameWithSha(RuntimeEnvironment.application)} (https://mediawiki.org/wiki/Apps/Commons) Android/${Build.VERSION.RELEASE}",
321+
assertEquals("Commons/${ConfigUtils.getVersionNameWithSha(ApplicationProvider.getApplicationContext())} (https://mediawiki.org/wiki/Apps/Commons) Android/${Build.VERSION.RELEASE}",
323322
it.getHeader("User-Agent"))
324323
if ("POST" == method) {
325324
assertEquals("application/x-www-form-urlencoded", it.getHeader("Content-Type"))

app/src/test/kotlin/fr/free/nrw/commons/mwapi/OkHttpJsonApiClientTest.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ import kotlin.random.Random
2929
* Mock web server based tests for ok http json api client
3030
*/
3131
@RunWith(RobolectricTestRunner::class)
32-
@Config(constants = BuildConfig::class, sdk = [23], application = TestCommonsApplication::class)
32+
@Config(sdk = [23], application = TestCommonsApplication::class)
3333
class OkHttpJsonApiClientTest {
3434

3535
private lateinit var testObject: OkHttpJsonApiClient

app/src/test/kotlin/fr/free/nrw/commons/review/ReviewHelperTest.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import fr.free.nrw.commons.Media
44
import fr.free.nrw.commons.mwapi.MediaWikiApi
55
import fr.free.nrw.commons.mwapi.OkHttpJsonApiClient
66
import io.reactivex.Single
7-
import junit.framework.Assert.assertTrue
7+
import org.junit.Assert.assertTrue
88
import org.junit.Before
99
import org.junit.Test
1010
import org.mockito.ArgumentMatchers

gradle.properties

+1
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
#Thu Mar 01 15:28:48 IST 2018
1616
org.gradle.jvmargs=-Xmx1536M
1717
android.enableBuildCache=true
18+
android.enableUnitTestBinaryResources=true
1819

1920
KOTLIN_VERSION=1.3.21
2021
BUTTERKNIFE_VERSION=10.1.0

0 commit comments

Comments
 (0)