mirror of
https://github.com/commons-app/apps-android-commons.git
synced 2025-10-26 12:23:58 +01:00
test(ReasonBuilder): fix tests according to new behavior
This commit is contained in:
parent
7d374ceb07
commit
93d43a289b
1 changed files with 8 additions and 7 deletions
|
|
@ -5,13 +5,14 @@ import android.content.res.Resources
|
||||||
import fr.free.nrw.commons.Media
|
import fr.free.nrw.commons.Media
|
||||||
import fr.free.nrw.commons.R
|
import fr.free.nrw.commons.R
|
||||||
import fr.free.nrw.commons.auth.SessionManager
|
import fr.free.nrw.commons.auth.SessionManager
|
||||||
|
import fr.free.nrw.commons.fileusages.GlobalFileUsagesResponse
|
||||||
import fr.free.nrw.commons.mwapi.OkHttpJsonApiClient
|
import fr.free.nrw.commons.mwapi.OkHttpJsonApiClient
|
||||||
import fr.free.nrw.commons.profile.achievements.FeedbackResponse
|
|
||||||
import fr.free.nrw.commons.profile.leaderboard.LeaderboardResponse
|
import fr.free.nrw.commons.profile.leaderboard.LeaderboardResponse
|
||||||
import fr.free.nrw.commons.profile.leaderboard.UpdateAvatarResponse
|
import fr.free.nrw.commons.profile.leaderboard.UpdateAvatarResponse
|
||||||
import fr.free.nrw.commons.utils.ViewUtilWrapper
|
import fr.free.nrw.commons.utils.ViewUtilWrapper
|
||||||
import io.reactivex.Observable
|
import io.reactivex.Observable
|
||||||
import io.reactivex.Single
|
import io.reactivex.Single
|
||||||
|
import kotlinx.coroutines.test.runTest
|
||||||
import media
|
import media
|
||||||
import org.junit.Before
|
import org.junit.Before
|
||||||
import org.junit.Test
|
import org.junit.Test
|
||||||
|
|
@ -58,16 +59,16 @@ class ReasonBuilderTest {
|
||||||
PowerMockito.`when`(context?.getString(R.string.user_not_logged_in))
|
PowerMockito.`when`(context?.getString(R.string.user_not_logged_in))
|
||||||
.thenReturn("Log-in expired. Please log in again.")
|
.thenReturn("Log-in expired. Please log in again.")
|
||||||
|
|
||||||
reasonBuilder!!.getReason(mock(Media::class.java), "test")
|
reasonBuilder!!.getReason(mock(Media::class.java), "test").test()
|
||||||
verify(sessionManager, times(1))!!.forceLogin(any(Context::class.java))
|
verify(sessionManager, times(1))!!.forceLogin(any(Context::class.java))
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
fun getReason() {
|
fun getReason() = runTest {
|
||||||
`when`(sessionManager?.userName).thenReturn("Testuser")
|
`when`(sessionManager?.userName).thenReturn("Testuser")
|
||||||
`when`(sessionManager?.doesAccountExist()).thenReturn(true)
|
`when`(sessionManager?.doesAccountExist()).thenReturn(true)
|
||||||
`when`(okHttpJsonApiClient!!.getAchievements(anyString()))
|
`when`(okHttpJsonApiClient!!.getGlobalFileUsages(anyString(), anyInt()))
|
||||||
.thenReturn(Single.just(mock(FeedbackResponse::class.java)))
|
.thenReturn(mock(GlobalFileUsagesResponse::class.java))
|
||||||
`when`(okHttpJsonApiClient!!.getLeaderboard(anyString(), anyString(), anyString(), anyString(), anyString()))
|
`when`(okHttpJsonApiClient!!.getLeaderboard(anyString(), anyString(), anyString(), anyString(), anyString()))
|
||||||
.thenReturn(Observable.just(mock(LeaderboardResponse::class.java)))
|
.thenReturn(Observable.just(mock(LeaderboardResponse::class.java)))
|
||||||
`when`(okHttpJsonApiClient!!.setAvatar(anyString(), anyString()))
|
`when`(okHttpJsonApiClient!!.setAvatar(anyString(), anyString()))
|
||||||
|
|
@ -75,8 +76,8 @@ class ReasonBuilderTest {
|
||||||
|
|
||||||
val media = media(filename = "test_file", dateUploaded = Date())
|
val media = media(filename = "test_file", dateUploaded = Date())
|
||||||
|
|
||||||
reasonBuilder!!.getReason(media, "test")
|
reasonBuilder!!.getReason(media, "test").test()
|
||||||
verify(sessionManager, times(0))!!.forceLogin(any(Context::class.java))
|
verify(sessionManager, times(0))!!.forceLogin(any(Context::class.java))
|
||||||
verify(okHttpJsonApiClient, times(1))!!.getAchievements(anyString())
|
verify(okHttpJsonApiClient, times(1))!!.getGlobalFileUsages(anyString(), anyInt())
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue