/**
  * @return string
  */
 protected function getAuthorizeUrl()
 {
     $params = ['response_type' => 'code', 'state' => $this->stateStore->getState()] + $this->clientConfig->getParams();
     if ($this->scope) {
         $params += $this->scope->getQuerystringParams();
     }
     return vsprintf('%s%s%s%s', [$this->httpClient->getConfig('base_uri'), $this->serverConfig->getParams()['authorization_endpoint'], '?', http_build_query($params)]);
 }
 public function testHandleAuthorizationResponse()
 {
     $token = 'token_ABC123';
     $this->given->iAmReadyToRespondToATokenRequest($token, $this->scope, $this->mockHandler);
     $this->oauthSession->handleAuthorizationResponse($this->getAuthorization($this->stateStore->getState()));
     $this->shouldHaveMadeATokenRequest();
     $this->shouldHaveTokenInHeaderForResourceRequests($token);
 }
 public function testSetStateGenerator()
 {
     $value = 'hooha';
     $this->stateStore->setStateGenerator(new MockStateGenerator($value));
     $this->assertEquals($value, $this->stateStore->getState());
 }