11package com.lukaslechner.coroutineusecasesonandroid.utils
22
3- import com.google.gson.Gson
43import okhttp3.*
54import kotlin.random.Random
65
76class MockNetworkInterceptor : Interceptor {
87
98 private val mockResponses = mutableListOf<MockResponse >()
10- private val gson = Gson ()
119
1210 override fun intercept (chain : Interceptor .Chain ): Response {
1311 val request = chain.request()
@@ -26,7 +24,7 @@ class MockNetworkInterceptor : Interceptor {
2624 maybeReturnErrorResponse(mockResponse, request)
2725 }
2826 } else {
29- createErrorResponse(request)
27+ createErrorResponse(request, mockResponse.body() )
3028 }
3129 }
3230
@@ -54,16 +52,16 @@ class MockNetworkInterceptor : Interceptor {
5452 Thread .sleep(mockResponse.delayInMs)
5553 }
5654
57- private fun createErrorResponse (request : Request ): Response {
55+ private fun createErrorResponse (request : Request , errorBody : String = " Error " ): Response {
5856 return Response .Builder ()
5957 .code(500 )
6058 .request(request)
6159 .protocol(Protocol .HTTP_1_1 )
62- .message(" Internal Server Error" )
60+ .message(" Internal Server Error: $errorBody " )
6361 .body(
6462 ResponseBody .create(
65- MediaType .get(" application/json " ),
66- gson.toJson( mapOf ( " cause " to " not sure " ))
63+ MediaType .get(" text/plain " ),
64+ errorBody
6765 )
6866 )
6967 .build()
0 commit comments