У меня есть простой клиент спрей:Как издеваются ответ спрей-клиент
val pipeline = sendReceive ~> unmarshal[GoogleApiResult[Elevation]]
val responseFuture = pipeline {Get("http://maps.googleapis.com/maps/api/elevation/jsonlocations=27.988056,86.925278&sensor=false") }
responseFuture onComplete {
case Success(GoogleApiResult(_, Elevation(_, elevation) :: _)) =>
log.info("The elevation of Mt. Everest is: {} m", elevation)
shutdown()
case Failure(error) =>
log.error(error, "Couldn't get elevation")
shutdown()
}
Полный код можно найти here.
Я хочу высмеять ответ сервера для проверки логики в случаях Success
и Failure
. Единственная соответствующая информация, которую я нашел, была here, но я не смог использовать шаблон торта, чтобы высмеять метод sendReceive.
Любое предложение или пример были бы весьма признательны.
Именно то, что я искал. Спасибо! – Eleni
Мы могли бы просто использовать 'Future.successful (mockResponse)' вместо 'Promise.successful (mockResponse) .future'. Я также предпочел бы сделать 'sendAndReceive' аргумент' ElevationClient' вместо использования переопределения. Затем мы передадим макет 'Function2 [HttpRequest, Future [HttpResponse]]' для нашего 'sendAndReceive'. – Alden