public function testAccessTokenSetExpiresDirect()
 {
     $token = new AccessToken('testToken', 'bearer', ['expires' => 500]);
     $this->assertTrue($token->isExpired());
     $token = new AccessToken('testToken', 'bearer', ['expires' => time() + 500]);
     $this->assertFalse($token->isExpired());
 }
 /**
  * Get the access token.
  *
  * @return AccessToken|null Oauth2 access token
  */
 public function getAccessToken()
 {
     if (!$this->accessToken instanceof AccessToken || $this->accessToken->isExpired()) {
         $this->acquireAccessToken();
     }
     return $this->accessToken;
 }
 /**
  * Get the access token.
  *
  * @return AccessToken|null Oauth2 access token
  */
 public function getAccessToken()
 {
     if ($this->accessToken && $this->accessToken->isExpired()) {
         // The access token has expired.
         $this->accessToken = null;
     }
     if (null === $this->accessToken) {
         // Try to acquire a new access token from the server.
         $this->accessToken = $this->acquireAccessToken();
         if ($this->accessToken) {
             $this->refreshToken = $this->accessToken->getRefreshToken();
         }
     }
     return $this->accessToken;
 }