diff --git a/app-shared-tests/build.gradle b/app-shared-tests/build.gradle index ea39f236..10b06811 100644 --- a/app-shared-tests/build.gradle +++ b/app-shared-tests/build.gradle @@ -90,5 +90,5 @@ dependencies { // Ktlint ktlintRuleset project(":custom-ktlint-rules") - implementation("com.github.appunite:MockWebServer-Extensions:0.1.0") + implementation("com.github.appunite.MockWebServer-Extensions:mockwebserver-extensions:4e73e70faa") } diff --git a/app-shared-tests/src/main/java/com/appunite/loudius/AbsReviewersScreenTest.kt b/app-shared-tests/src/main/java/com/appunite/loudius/AbsReviewersScreenTest.kt index 758c0f03..23191043 100644 --- a/app-shared-tests/src/main/java/com/appunite/loudius/AbsReviewersScreenTest.kt +++ b/app-shared-tests/src/main/java/com/appunite/loudius/AbsReviewersScreenTest.kt @@ -111,6 +111,8 @@ abstract class AbsReviewersScreenTest { @Test fun whenClickOnNotifyAndDoNotCommentThenShowError() { with(integrationTestRule) { + Register.set404Error(mockWebServer) + composeTestRule.setContent { KoinContext { LoudiusTheme { diff --git a/app-shared-tests/src/main/java/com/appunite/loudius/util/Register.kt b/app-shared-tests/src/main/java/com/appunite/loudius/util/Register.kt index 0c5a7061..f84f233c 100644 --- a/app-shared-tests/src/main/java/com/appunite/loudius/util/Register.kt +++ b/app-shared-tests/src/main/java/com/appunite/loudius/util/Register.kt @@ -21,6 +21,7 @@ import com.appunite.mockwebserverextensions.util.jsonResponse import com.appunite.mockwebserverextensions.util.path import com.appunite.mockwebserverextensions.util.queryParameter import com.appunite.mockwebserverextensions.util.url +import okhttp3.mockwebserver.MockResponse import strikt.api.expectThat import strikt.assertions.isEqualTo @@ -102,6 +103,17 @@ object Register { } } + fun set404Error(mockWebServer: MockWebServerRule) { + mockWebServer.register { + expectThat(it).url.and { + get("host") { host }.isEqualTo("api.github.com") + path.isEqualTo("/repos/exampleOwner/exampleRepo/issues/1/comments") + } + + MockResponse().setResponseCode(404) + } + } + fun requestedReviewers(mockWebServer: MockWebServerRule) { mockWebServer.register { expectThat(it).url.and { diff --git a/app/build.gradle b/app/build.gradle index 9c4cc33f..10975641 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -162,7 +162,8 @@ dependencies { implementation(platform(libs.firebase.bom)) implementation(libs.firebase.analytics) - implementation("com.github.appunite:MockWebServer-Extensions:0.1.0") + androidTestImplementation("com.github.appunite.MockWebServer-Extensions:mockwebserver-extensions:4e73e70faa") + implementation("com.github.appunite.MockWebServer-Extensions:mockwebserver-interceptor:4e73e70faa") } tasks.withType(Test) { diff --git a/app/src/main/java/com/appunite/loudius/di/NetworkModule.kt b/app/src/main/java/com/appunite/loudius/di/NetworkModule.kt index c4ad9045..f71d083b 100644 --- a/app/src/main/java/com/appunite/loudius/di/NetworkModule.kt +++ b/app/src/main/java/com/appunite/loudius/di/NetworkModule.kt @@ -20,7 +20,7 @@ import com.appunite.loudius.common.Constants import com.appunite.loudius.network.intercept.AuthFailureInterceptor import com.appunite.loudius.network.intercept.AuthInterceptor import com.appunite.loudius.network.utils.AuthFailureHandler -import com.appunite.mockwebserverextensions.intercept.TestInterceptor +import com.appunite.mockwebserver_interceptor.TestInterceptor import io.ktor.client.HttpClient import io.ktor.client.engine.okhttp.OkHttp import io.ktor.client.plugins.contentnegotiation.ContentNegotiation