HTTP リクエストを処理するコードがいくつかあり、それを単体テストしたいと考えています。
したがって、私はdispatch.Httpまたはより良いdispatch.HttpExecutor(0.8.5)をScala(2.9.1.final)、Mockito(1.9.0-rc1)、およびScalaTest(1.6.1)でモックしようとしていますが、できます.テスト コードをコンパイル可能にしないでください。
ここで MyHttpTest では、任意の HTTP 要求に対して特定の HTTP 応答を受信したいと考えています。
import org.scalatest.FunSuite
import org.scalatest.mock.MockitoSugar
import org.mockito.Mockito.when
import org.mockito.Matchers.any
import dispatch._
class MyHttpTest extends FunSuite with MockitoSugar {
test("example") {
val httpMock = mock[HttpExecutor]
when(httpMock.apply(any(classOf[Handler[String]]))).thenReturn("Some_HTTP_response")
}
}
しかし、コンパイルエラーが発生します:
error: overloaded method value thenReturn with alternatives:
(httpMock.HttpPackage[String],<repeated...>[httpMock.HttpPackage[String]])org.mockito.stubbing.OngoingStubbing[httpMock.HttpPackage[String]] <and>
(httpMock.HttpPackage[String])org.mockito.stubbing.OngoingStubbing[httpMock.HttpPackage[String]]
cannot be applied to (java.lang.String)
when(httpMock.apply(any(classOf[Handler[String]]))).thenReturn("Some_response")
では、ディスパッチクライアントをモックする方法は?