Example #1
0
 /**
  * @return AccessToken|null
  */
 public function getToken()
 {
     if (!is_null($this->token) && $this->token->isExpired()) {
         $this->token = null;
     }
     if (is_null($this->token)) {
         $response = $this->gigya->socialize()->getToken(['grant_type' => 'none'], ['auth' => 'credentials']);
         if ($response->getErrorCode() == ErrorCode::OK) {
             $data = $response->getData();
             $token = $data->get('access_token');
             $expires = null;
             if ($data->has('expires_in')) {
                 $expires = (new DateTime())->add(new DateInterval(sprintf('PT%dS', $data->get('expires_in', 0))));
             }
             $this->token = new AccessToken($token, $expires);
         }
     }
     return $this->token;
 }
Example #2
0
 public function testProperties()
 {
     $token = new AccessToken('token');
     static::assertEquals('token', $token->getToken());
     static::assertNull($token->getExpires());
     static::assertFalse($token->isExpired());
     $token->setToken('new token');
     static::assertEquals('new token', $token->getToken());
     $expires = (new DateTime())->add(new DateInterval('PT60S'));
     $token->setExpires($expires);
     static::assertEquals($expires, $token->getExpires());
     static::assertFalse($token->isExpired());
     $expires = new DateTime();
     $token->setExpires($expires);
     static::assertTrue($token->isExpired());
 }