0
基本應用程序體系結構 查看Official 2.5 WS Test Documentation,它只會談到獲取同步的響應。如何在Play中測試防火和忘記WSClient請求
object GitHubClientSpec extends Specification with NoTimeConversions {
"GitHubClient" should {
"get all repositories" in {
Server.withRouter() {
case GET(p"/repositories") => Action {
Results.Ok(Json.arr(Json.obj("full_name" -> "octocat/Hello-World")))
}
} { implicit port =>
WsTestClient.withClient { client =>
val result = Await.result(
new GitHubClient(client, "").repositories(), 10.seconds)
result must_== Seq("octocat/Hello-World")
}
}
}
}
}
,如果我想測試會發生什麼步驟在我的建築4,5,6?我可以使用WSTestClient嗎?文件似乎稀疏它
這裏是我想通過我的返工架構測試
def createGraphvizDotStringAndReturnImgurLink = Action.async{ implicit request =>
import SlashCommandIn._
slackForm.bindFromRequest.fold(
formWithErrors => {
Logger.warn(s"Incorrect Form Format: ${request.body.asText.getOrElse("<No Body>")}}")
Future{Ok(Json.toJson(SlackPrivateUserResponse(BAD_FORM_DATA_MSG)))}
},
goodValidatedSlackRequest => {
if(goodValidatedSlackRequest.token.contentEquals(SLACK_EXPECTED_TOKEN)) {
Logger.debug("Validation Succeeded")
_doImageCreationAndGetImgurLink(goodValidatedSlackRequest) // Steps, 4, 5, and 6
Future{Ok(Json.toJson(SlackPrivateUserResponse(PROCESSING_MSG + "\n>>>" +
goodValidatedSlackRequest.text)))}
}else {
Future{Ok(Json.toJson(SlackPrivateUserResponse(BAD_TOKEN_MSG)))}
}
}
)
}