From 0806d71e96293b015c1a95dd9a405406e63d5bf5 Mon Sep 17 00:00:00 2001 From: Harsh Shandilya Date: Wed, 23 Sep 2020 14:32:01 +0530 Subject: [PATCH] lobsters-api: fix tests Signed-off-by: Harsh Shandilya --- lobsters-api/build.gradle | 1 + .../msfjarvis/lobsters/api/LobstersApiTest.kt | 24 ++++--------------- 2 files changed, 5 insertions(+), 20 deletions(-) diff --git a/lobsters-api/build.gradle b/lobsters-api/build.gradle index c95a89b1..4de188c3 100644 --- a/lobsters-api/build.gradle +++ b/lobsters-api/build.gradle @@ -11,6 +11,7 @@ dependencies { implementation "com.squareup.retrofit2:converter-moshi:$retrofit_version" kaptTest "com.squareup.moshi:moshi-kotlin-codegen:$moshi_version" testImplementation 'junit:junit:4.13' + testImplementation "org.jetbrains.kotlinx:kotlinx-coroutines-core:1.3.9" // retrofit uses 3.14.9, so shall we. //noinspection GradleDependency testImplementation "com.squareup.okhttp3:mockwebserver:3.14.9" diff --git a/lobsters-api/src/test/java/dev/msfjarvis/lobsters/api/LobstersApiTest.kt b/lobsters-api/src/test/java/dev/msfjarvis/lobsters/api/LobstersApiTest.kt index 2e0305b7..9e567ce9 100644 --- a/lobsters-api/src/test/java/dev/msfjarvis/lobsters/api/LobstersApiTest.kt +++ b/lobsters-api/src/test/java/dev/msfjarvis/lobsters/api/LobstersApiTest.kt @@ -1,18 +1,14 @@ package dev.msfjarvis.lobsters.api -import dev.msfjarvis.lobsters.model.LobstersPost +import kotlinx.coroutines.runBlocking import okhttp3.mockwebserver.Dispatcher import okhttp3.mockwebserver.MockResponse import okhttp3.mockwebserver.MockWebServer import okhttp3.mockwebserver.RecordedRequest import org.junit.After import org.junit.Assert.assertEquals -import org.junit.Assert.fail import org.junit.Before import org.junit.Test -import retrofit2.Call -import retrofit2.Callback -import retrofit2.Response class LobstersApiTest { private val webServer = MockWebServer() @@ -30,21 +26,9 @@ class LobstersApiTest { } @Test - fun `api gets correct number of items`() { - apiClient.getHottestPosts().enqueue(object : Callback> { - override fun onResponse( - call: Call>, - response: Response> - ) { - val posts = response.body() - require(posts != null) - assertEquals(25, posts.size) - } - - override fun onFailure(call: Call>, t: Throwable) { - fail("Call cannot fail in tests") - } - }) + fun `api gets correct number of items`() = runBlocking { + val posts = apiClient.getHottestPosts() + assertEquals(25, posts.size) } @After