Route TestKit中的链接请求

时间:2018-09-05 09:40:19

标签: scala akka akka-http

我正在使用Route TestKit测试一些简单的API,我想知道是否可以干净地链接请求。假设我要测试获取的结果,然后发布,是否给出了一定的结果。最干净/最惯用的方法是什么?

从文档中举一个例子:

"leave GET requests to other paths unhandled" in {
  // tests:
  Get("/kermit") ~> smallRoute ~> check {
    handled shouldBe false
  }
}

我将如何测试这种情况,在这种情况下,以前的Post会更改Get的结果(这不是正确的代码,但可以解释这个想法):

"leave GET requests to other paths unhandled" in {
  // tests:
  Post("/kermit") ~> Get("/kermit") ~> smallRoute ~> check {
    handled shouldBe true
  }
}

1 个答案:

答案 0 :(得分:0)

我将从第一个请求开始测试每种情况。在相同的情况下,我还将检查Post前后的Get。

要一个接一个地运行请求,您可以嵌套Get inside Post:

  // tests:
  Post("/kermit") ~> smallRoute ~> check {
    Get("/kermit") ~> smappROute ~> check {
    //check
    }
  }

或者您可以按顺序运行它们:

Post() ~> complete("ok") ~> check {//empty body}
Get() ~> complete("ok") ~> check {
  //actual checks
}