api: fix tests

This commit is contained in:
Harsh Shandilya 2022-05-24 13:29:09 +05:30
parent d4a3335fa6
commit a93eeab14a
No known key found for this signature in database
GPG key ID: 366D7BBAD1031E80
2 changed files with 16 additions and 1 deletions

View file

@ -5,11 +5,25 @@ import kotlin.test.assertEquals
import kotlinx.coroutines.runBlocking
import retrofit2.Retrofit
import retrofit2.mock.MockRetrofit
import retrofit2.mock.NetworkBehavior
import retrofit2.mock.create
class ApiTest {
private val retrofit = Retrofit.Builder().baseUrl(LobstersApi.BASE_URL).build()
private val api = MockRetrofit.Builder(retrofit).build().create<LobstersApi>().let(::FakeApi)
private val networkBehaviour = createNetworkBehaviour()
private val api =
MockRetrofit.Builder(retrofit)
.networkBehavior(networkBehaviour)
.build()
.create<LobstersApi>()
.let(::FakeApi)
private fun createNetworkBehaviour(): NetworkBehavior {
val behaviour = NetworkBehavior.create()
behaviour.setFailurePercent(0)
behaviour.setErrorPercent(0)
return behaviour
}
@Test
fun `api gets correct number of items`() = runBlocking {

View file

@ -2,6 +2,7 @@ package dev.msfjarvis.claw.api
import dev.msfjarvis.claw.model.LobstersPost
import dev.msfjarvis.claw.model.LobstersPostDetails
import dev.msfjarvis.claw.model.User
import dev.msfjarvis.claw.util.TestUtils.getJson
import kotlinx.serialization.decodeFromString
import kotlinx.serialization.json.Json