从ScalatTest ScalatTest获取会话值
我目前正在使用ScalaTest框架和ScalatrSuite类编写一些Scalatra测试从ScalatTest ScalatTest获取会话值,scala,scalatest,scalatra,Scala,Scalatest,Scalatra,我目前正在使用ScalaTest框架和ScalatrSuite类编写一些Scalatra测试 test("when i try to go to the base url it shold redirect me "){ get("/") { status should be(302) } } 下一步需要我检查一些会话值的存在性,但不清楚如何做到这一点?有人能提供建议吗?我正在创建一个SessionAccess特征,为了测试的目的,它用一个简单的特征覆盖,
test("when i try to go to the base url it shold redirect me "){
get("/") {
status should be(302)
}
}
下一步需要我检查一些会话值的存在性,但不清楚如何做到这一点?有人能提供建议吗?我正在创建一个SessionAccess特征,为了测试的目的,它用一个简单的特征覆盖,将会话存储在一个可访问的HashMap中,但我确信有一种更简单的方法?我查看了ScalatrSuite的代码,看起来没有办法检索会话对象本身。但是,您可以在会话内执行多个调用,以检查预期的行为 如果您有这些电话:
post("/start") {
session("foo") = params("foo")
// ...
}
get("/do_something") {
session.get("foo")
}
您可以这样测试它:
test("Whatever inside of a session") {
session {
post("/start", "foo" -> "bar") {
// assert...
}
get("/do_something") {
body should equal ("bar")
}
}
}
希望能有帮助。我就是这么想的。谢谢你的确认。