6

How can I delay a Square MockWebServer HTTP response?

There is a response.setBodyDelayTimeMs(...); method but this is only used in SpdySocketHandler and not for HTTP requests.

Ralph Bergmann
  • 3,015
  • 4
  • 30
  • 61

3 Answers3

2

That's a bug that we OkHttp maintainers need to fix. If you report it on our issue tracker, we'll tale care of it. Or better yet, send us a pull request!

Jesse Wilson
  • 39,078
  • 8
  • 121
  • 128
1

response.setBodyDelay(10, TimeUnit.SECONDS)

This should now work for HTTP requests as well.

Life Of Pai
  • 91
  • 1
  • 2
0
    val serverFoo = MockWebServer().apply {
        dispatcher = object : Dispatcher() {
            override fun dispatch(request: RecordedRequest): MockResponse {
                TimeUnit.SECONDS.sleep(1)
                return MockResponse()
            }
        }
    }
k4dima
  • 6,070
  • 5
  • 41
  • 39