Akka-http-testkit返回嵌套列表而不是拼合列表

时间:2018-11-30 19:20:09

标签: scala scalatest akka-http akka-testkit

我正在使用akka-http-testkit来测试路由,并使用scalamock来模拟我的课程。端点是带有有效负载的GET

我有一个返回Future[List[Map[String, Any]]]的方法-基本上是数据库中的原始行。它可以与curl配合使用,但是我的断言无法比较JSON,因为它具有[[]]而不是[]

我不确定为什么,因为使用curl可以正常工作-这是我的测试代码:

"return correct json from mock" in {

  val getRequest = HttpRequest(
    HttpMethods.GET,
    uri = "/endpoint",
    entity = HttpEntity(MediaTypes.`application/json`, jsonStringRequest))
    val fake = stub[FakeService]
    (fake.query (_: String, _: MyParsedObject)(_: ExecutionContext)) when ("endpoint", myParsedObject, ec) returns Future.successful(responseAsMap)

    getRequest ~> route ~> check {
      responseAs[String] shouldBe jsonStringResponse
    }
}

那是我的错误:

"[[ { "aaa" : 123}, { "aaa" : 123 } ]]" 
was not equal to "[ { "aaa" : 123}, { "aaa" : 123 } ]"

它与Future[T]而不是T有关系吗? 我该如何解决?

0 个答案:

没有答案