Первый раз пользователь спрея чуть не вырвал волосы.
trait SampleService extends SimpleRoutingApp with JsonProtocol with SprayJsonSupport {
implicit val system: ActorSystem = ActorSystem("test")
implicit def context: ExecutionContext = system.dispatcher
startServer(interface = "localhost", port = 8888) {
path("test") { _ =>
get {
complete {
"test"
}
}
}
}
}
импортировать org.scalest.FlatSpec импортировать spray.testkit.ScalatestRouteTest
class ApiSpec extends FlatSpec with ScalatestRouteTest with SampleService {
"The api service" should "return test" in {
Get("/test/") ~> check {
responseAs[String] === "test"
}
}
}
И замечательное сообщение об ошибке компиляции:
could not find implicit value for parameter ta: ApiSpec.this.TildeArrow[ApiSpec.this.RouteResult,Boolean]
[error] Get("/test/") ~> check {}
Может ли кто-нибудь указать мне правильное направление? Копирование и вставка из spray-testkit
примеров, похоже, не удалась.
request ~> route ~> check {}
. Вам не хватает частиroute
. Вам нужно поместить маршрут (начиная сpath("test")
) вdef
, где вы можете получить к нему доступ из документации. Официальный проект spray-template показывает общую базовую архитектуру создания легко тестируемых приложений. github.com/spray/spray-template/blob/ - person jrudolph   schedule 24.02.2015spray.json._
- person Niko   schedule 05.07.2021