当前位置: 首页>>代码示例>>Scala>>正文


Scala SessionKeys类代码示例

本文整理汇总了Scala中uk.gov.hmrc.play.http.SessionKeys的典型用法代码示例。如果您正苦于以下问题:Scala SessionKeys类的具体用法?Scala SessionKeys怎么用?Scala SessionKeys使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


在下文中一共展示了SessionKeys类的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Scala代码示例。

示例1: AuthStub

//设置package包名称以及导入依赖的类
package uk.gov.hmrc.agentmappingfrontend.stubs

import com.github.tomakehurst.wiremock.client.WireMock._
import uk.gov.hmrc.agentmappingfrontend.support.{SampleUser, SessionKeysForTesting}
import uk.gov.hmrc.play.http.SessionKeys

object AuthStub {
  def userIsNotAuthenticated(): Unit = {
    stubFor(get(urlEqualTo("/auth/authority")).willReturn(aResponse().withStatus(401)))
  }

  def userIsAuthenticated(user: SampleUser): Seq[(String, String)] = {
    stubFor(get(urlEqualTo("/auth/authority")).willReturn(aResponse().withStatus(200).withBody(user.authJson)))
    stubFor(get(urlMatching("/auth/oid/[^/]+$")).willReturn(aResponse().withStatus(200).withBody(user.authJson)))
    stubFor(get(urlEqualTo(user.userDetailsLink)).willReturn(aResponse().withStatus(200).withBody(user.userDetailsJson)))

    sessionKeysForMockAuth(user)
  }

  private def sessionKeysForMockAuth(user: SampleUser): Seq[(String, String)] = Seq(
    SessionKeys.userId -> user.authorityUri,
    SessionKeysForTesting.token -> "fakeToken")

  def isNotEnrolled(user: SampleUser): Unit = {
    stubFor(get(urlEqualTo(user.enrolmentsLink)).willReturn(aResponse().withStatus(200).withBody("[]")))
  }

  def isEnrolled(user: SampleUser, state: String = "Activated"): Unit = {
    stubFor(get(urlEqualTo(user.enrolmentsLink)).willReturn(aResponse().withStatus(200).withBody(
      s"""|[{"key":"IR-SA-AGENT","identifiers":[{"key":"IrAgentReference","value":"${user.saAgentReference.get}"}],"state":"$state"}]""".stripMargin)))
  }

  def passcodeAuthorisationSucceeds(regime: String = "agent-mapping", otacToken: String = "dummy-otac-token"): Seq[(String, String)] = {
    stubPasscodeAuthorisation(regime, 200)

    Seq(SessionKeys.otacToken -> otacToken)
  }

  def passcodeAuthorisationFails(regime: String = "agent-mapping"): Unit = {
    stubPasscodeAuthorisation(regime, 403)
  }

  private def stubPasscodeAuthorisation(regime: String, status: Int) = {
    stubFor(get(urlEqualTo(s"/authorise/read/$regime"))
      .willReturn(
        aResponse()
          .withStatus(status)))
  }
} 
开发者ID:hmrc,项目名称:agent-mapping-frontend,代码行数:50,代码来源:AuthStub.scala


注:本文中的uk.gov.hmrc.play.http.SessionKeys类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。