public function testGetUserUrl() { $access_token = create_test_user()['access_token']; $user = new Gajus\Fuss\User(new Gajus\Fuss\AccessToken($this->app, $access_token, Gajus\Fuss\AccessToken::TYPE_USER)); $request = new Gajus\Fuss\Request($user, 'GET', 'me'); $this->assertSame('https://graph.facebook.com/me?access_token=' . urlencode($access_token) . '&appsecret_proof=' . self::getAppSecretProof($access_token), $request->getUrl()); }
public function testGetAccessTokenWhenFromCode() { $test_user = create_test_user(); $access_token = new \Gajus\Fuss\AccessToken($this->app, $test_user['access_token'], \Gajus\Fuss\AccessToken::TYPE_USER); $access_token->extend(); $code = $access_token->getCode(); $signed_request = make_signed_request(['code' => $code]); $access_token = $signed_request->getAccessToken(); $this->assertInstanceOf('Gajus\\Fuss\\AccessToken', $access_token); // "In some cases, this newer long-lived token might be identical to the previous one, but we can't guarantee it and your app shouldn't depend upon it." // @see https://developers.facebook.com/docs/facebook-login/access-tokens#refreshtokens #$this->assertSame($test_user['access_token'], $access_token->getPlain()); $this->assertSame($test_user['id'], $access_token->getInfo()['data']['user_id']); }
public function testGetCustomScope() { $user = create_test_user('email'); $access_token = new Gajus\Fuss\AccessToken($this->app, $user['access_token'], Gajus\Fuss\AccessToken::TYPE_USER); $scope = $access_token->getScope(); $this->assertCount(4, $scope); $this->assertContains('public_profile', $scope); $this->assertContains('basic_info', $scope); $this->assertContains('email', $scope); $this->assertContains('user_friends', $scope); }
/** * @expectedException Gajus\Fuss\Exception\UserException * @expectedExceptionMessage The new access token is for a different user. */ public function testChangeAccessTokenToAnotherUser() { $access_token = new Gajus\Fuss\AccessToken($this->app, create_test_user()['access_token'], Gajus\Fuss\AccessToken::TYPE_USER); $this->user->setAccessToken($access_token); }