私は akk-http で残りのテスト ケースを書いています。ステートメントでこのエラーが発生しています。私のwhen(mockedRepository.getAllFromModule).thenReturn(x)
クラスは次のとおりです。
class GetModulesRestTest extends WordSpec with Matchers with ScalatestRouteTest with MockitoSugar {
val mockedRepository = mock[ImplModuleRepository]
val dummyRoutes = new GetModulesRest().routes
val inputData = Modules(1L,Some("ModuleName"), Some("SomeDescription"), false)
val dataJson = """[{"id": 1,"name": "HR","description": "This is about HR module","isRemoved": false}]"""
"Check Software Test" should {
"check for java and zookeeper installation" in {
val x = Future(Seq(inputData))
when(mockedRepository.getAllFromModule).thenReturn(x)
Get("/getmodules") ~> dummyRoutes ~> check {
responseAs[String] shouldBe dataJson
}
}
}
}
これは、postgres データベースからすべてのモジュールのリストImplModuleRepository
を返す抽象クラスです。プログラムは上記のようにエラーを表示しています。実際にはステートメント theReturn(x) はコンパイルされておらず、コンパイル時にこのエラーが表示されています。
Error:(32, 47) overloaded method value thenReturn with alternatives:
(x$1: scala.concurrent.Future[Seq[com.reactore.launchpad.entity.Modules]],x$2: scala.concurrent.Future[Seq[com.reactore.launchpad.entity.Modules]]*)org.mockito.stubbing.OngoingStubbing[scala.concurrent.Future[Seq[com.reactore.launchpad.entity.Modules]]] <and>
(x$1: scala.concurrent.Future[Seq[com.reactore.launchpad.entity.Modules]])org.mockito.stubbing.OngoingStubbing[scala.concurrent.Future[Seq[com.reactore.launchpad.entity.Modules]]]
cannot be applied to (scalaz.concurrent.Future[Seq[com.reactore.launchpad.entity.Modules]])
when(mockedRepository.getAllFromModule).thenReturn(x)
何が悪いのかわかりません。