PlayFrameworkのcontrollerテストでcookieの送受信を行う
サーバからのset-cookieヘッダーを確認する。
レスポンスされたFutureインスタンスからcookies()でアクセスできる。get("cookie名")
でOption[Cookie]
が取得できるので、unwrapして値を確認することができる。
"render the index page from a new instance of controller" in { val controller = new HomeController(stubControllerComponents()) val home = controller.index().apply(FakeRequest(GET, "/")) cookies(home).get("cookie-name").getOrElse(Cookie("name", "no-send")).value mustBe "cookie-value"
cookies(res).get("key")
で取得したものがOption型と気づかずに四苦八苦してしまった(^_^;)
テストクライアントからcookieヘッダーを送信する。
FakeRequestにwithCookiesで追加できる。
val home = controller.index(None).apply(FakeRequest(GET, "/").withCookies(Cookie("cookie-name", "cookie-value")) )
リンク
リンク