mirror of
https://github.com/elyby/oauth2-server.git
synced 2024-12-22 21:19:46 +05:30
Updated tests for custom expires in
This commit is contained in:
parent
fdebbac2df
commit
5d7e0d67cc
@ -413,6 +413,47 @@ class Authorization_Server_test extends PHPUnit_Framework_TestCase
|
|||||||
$this->assertEquals(time()+$a->getExpiresIn(), $v['expires']);
|
$this->assertEquals(time()+$a->getExpiresIn(), $v['expires']);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function test_issueAccessToken_customExpiresIn()
|
||||||
|
{
|
||||||
|
$this->client->shouldReceive('getClient')->andReturn(array(
|
||||||
|
'client_id' => 1234,
|
||||||
|
'client_secret' => 5678,
|
||||||
|
'redirect_uri' => 'http://foo/redirect',
|
||||||
|
'name' => 'Example Client'
|
||||||
|
));
|
||||||
|
|
||||||
|
$this->session->shouldReceive('validateAuthCode')->andReturn(1);
|
||||||
|
$this->session->shouldReceive('updateSession')->andReturn(null);
|
||||||
|
$this->session->shouldReceive('removeAuthCode')->andReturn(null);
|
||||||
|
$this->session->shouldReceive('associateAccessToken')->andReturn(1);
|
||||||
|
|
||||||
|
$a = $this->returnDefault();
|
||||||
|
$grant = new OAuth2\Grant\AuthCode($a);
|
||||||
|
$grant->setExpiresIn(30);
|
||||||
|
$a->addGrantType($grant);
|
||||||
|
|
||||||
|
$_POST['grant_type'] = 'authorization_code';
|
||||||
|
$_POST['client_id'] = 1234;
|
||||||
|
$_POST['client_secret'] = 5678;
|
||||||
|
$_POST['redirect_uri'] = 'http://foo/redirect';
|
||||||
|
$_POST['code'] = 'foobar';
|
||||||
|
|
||||||
|
$request = new OAuth2\Util\Request(array(), $_POST);
|
||||||
|
$a->setRequest($request);
|
||||||
|
|
||||||
|
$v = $a->issueAccessToken();
|
||||||
|
|
||||||
|
$this->assertArrayHasKey('access_token', $v);
|
||||||
|
$this->assertArrayHasKey('token_type', $v);
|
||||||
|
$this->assertArrayHasKey('expires', $v);
|
||||||
|
$this->assertArrayHasKey('expires_in', $v);
|
||||||
|
|
||||||
|
$this->assertNotEquals($a->getExpiresIn(), $v['expires_in']);
|
||||||
|
$this->assertNotEquals(time()+$a->getExpiresIn(), $v['expires']);
|
||||||
|
$this->assertEquals(30, $v['expires_in']);
|
||||||
|
$this->assertEquals(time()+30, $v['expires']);
|
||||||
|
}
|
||||||
|
|
||||||
public function test_issueAccessToken_HTTP_auth()
|
public function test_issueAccessToken_HTTP_auth()
|
||||||
{
|
{
|
||||||
$this->client->shouldReceive('getClient')->andReturn(array(
|
$this->client->shouldReceive('getClient')->andReturn(array(
|
||||||
|
@ -280,6 +280,48 @@ class Client_Credentials_Grant_Test extends PHPUnit_Framework_TestCase
|
|||||||
$this->assertEquals(time()+$a->getExpiresIn(), $v['expires']);
|
$this->assertEquals(time()+$a->getExpiresIn(), $v['expires']);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function test_issueAccessToken_clientCredentialsGrant_customExpiresIn()
|
||||||
|
{
|
||||||
|
$this->client->shouldReceive('getClient')->andReturn(array(
|
||||||
|
'client_id' => 1234,
|
||||||
|
'client_secret' => 5678,
|
||||||
|
'redirect_uri' => 'http://foo/redirect',
|
||||||
|
'name' => 'Example Client'
|
||||||
|
));
|
||||||
|
|
||||||
|
$this->client->shouldReceive('validateRefreshToken')->andReturn(1);
|
||||||
|
|
||||||
|
$this->session->shouldReceive('validateAuthCode')->andReturn(1);
|
||||||
|
$this->session->shouldReceive('createSession')->andReturn(1);
|
||||||
|
$this->session->shouldReceive('deleteSession')->andReturn(null);
|
||||||
|
$this->session->shouldReceive('associateAccessToken')->andReturn(1);
|
||||||
|
|
||||||
|
$a = $this->returnDefault();
|
||||||
|
$grant = new OAuth2\Grant\ClientCredentials($a);
|
||||||
|
$grant->setExpiresIn(30);
|
||||||
|
$a->addGrantType($grant);
|
||||||
|
$a->requireScopeParam(false);
|
||||||
|
|
||||||
|
$_POST['grant_type'] = 'client_credentials';
|
||||||
|
$_POST['client_id'] = 1234;
|
||||||
|
$_POST['client_secret'] = 5678;
|
||||||
|
|
||||||
|
$request = new OAuth2\Util\Request(array(), $_POST);
|
||||||
|
$a->setRequest($request);
|
||||||
|
|
||||||
|
$v = $a->issueAccessToken();
|
||||||
|
|
||||||
|
$this->assertArrayHasKey('access_token', $v);
|
||||||
|
$this->assertArrayHasKey('token_type', $v);
|
||||||
|
$this->assertArrayHasKey('expires', $v);
|
||||||
|
$this->assertArrayHasKey('expires_in', $v);
|
||||||
|
|
||||||
|
$this->assertNotEquals($a->getExpiresIn(), $v['expires_in']);
|
||||||
|
$this->assertNotEquals(time()+$a->getExpiresIn(), $v['expires']);
|
||||||
|
$this->assertEquals(30, $v['expires_in']);
|
||||||
|
$this->assertEquals(time()+30, $v['expires']);
|
||||||
|
}
|
||||||
|
|
||||||
function test_issueAccessToken_clientCredentialsGrant_withRefreshToken()
|
function test_issueAccessToken_clientCredentialsGrant_withRefreshToken()
|
||||||
{
|
{
|
||||||
$this->client->shouldReceive('getClient')->andReturn(array(
|
$this->client->shouldReceive('getClient')->andReturn(array(
|
||||||
|
@ -461,6 +461,54 @@ class Password_Grant_Test extends PHPUnit_Framework_TestCase
|
|||||||
$this->assertEquals(time()+$a->getExpiresIn(), $v['expires']);
|
$this->assertEquals(time()+$a->getExpiresIn(), $v['expires']);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function test_issueAccessToken_passwordGrant_customExpiresIn()
|
||||||
|
{
|
||||||
|
$this->client->shouldReceive('getClient')->andReturn(array(
|
||||||
|
'client_id' => 1234,
|
||||||
|
'client_secret' => 5678,
|
||||||
|
'redirect_uri' => 'http://foo/redirect',
|
||||||
|
'name' => 'Example Client'
|
||||||
|
));
|
||||||
|
|
||||||
|
$this->client->shouldReceive('validateRefreshToken')->andReturn(1);
|
||||||
|
|
||||||
|
$this->session->shouldReceive('validateAuthCode')->andReturn(1);
|
||||||
|
$this->session->shouldReceive('createSession')->andReturn(1);
|
||||||
|
$this->session->shouldReceive('deleteSession')->andReturn(null);
|
||||||
|
$this->session->shouldReceive('updateRefreshToken')->andReturn(null);
|
||||||
|
$this->session->shouldReceive('associateAccessToken')->andReturn(1);
|
||||||
|
|
||||||
|
$testCredentials = function($u, $p) { return 1; };
|
||||||
|
|
||||||
|
$a = $this->returnDefault();
|
||||||
|
$pgrant = new OAuth2\Grant\Password($a);
|
||||||
|
$pgrant->setVerifyCredentialsCallback($testCredentials);
|
||||||
|
$pgrant->setExpiresIn(30);
|
||||||
|
$a->addGrantType($pgrant);
|
||||||
|
$a->requireScopeParam(false);
|
||||||
|
|
||||||
|
$_POST['grant_type'] = 'password';
|
||||||
|
$_POST['client_id'] = 1234;
|
||||||
|
$_POST['client_secret'] = 5678;
|
||||||
|
$_POST['username'] = 'foo';
|
||||||
|
$_POST['password'] = 'bar';
|
||||||
|
|
||||||
|
$request = new OAuth2\Util\Request(array(), $_POST);
|
||||||
|
$a->setRequest($request);
|
||||||
|
|
||||||
|
$v = $a->issueAccessToken();
|
||||||
|
|
||||||
|
$this->assertArrayHasKey('access_token', $v);
|
||||||
|
$this->assertArrayHasKey('token_type', $v);
|
||||||
|
$this->assertArrayHasKey('expires', $v);
|
||||||
|
$this->assertArrayHasKey('expires_in', $v);
|
||||||
|
|
||||||
|
$this->assertNotEquals($a->getExpiresIn(), $v['expires_in']);
|
||||||
|
$this->assertNotEquals(time()+$a->getExpiresIn(), $v['expires']);
|
||||||
|
$this->assertEquals(30, $v['expires_in']);
|
||||||
|
$this->assertEquals(time()+30, $v['expires']);
|
||||||
|
}
|
||||||
|
|
||||||
function test_issueAccessToken_passwordGrant_withRefreshToken()
|
function test_issueAccessToken_passwordGrant_withRefreshToken()
|
||||||
{
|
{
|
||||||
$this->client->shouldReceive('getClient')->andReturn(array(
|
$this->client->shouldReceive('getClient')->andReturn(array(
|
||||||
|
@ -240,4 +240,47 @@ class Refresh_Token_test extends PHPUnit_Framework_TestCase
|
|||||||
$this->assertEquals($a->getExpiresIn(), $v['expires_in']);
|
$this->assertEquals($a->getExpiresIn(), $v['expires_in']);
|
||||||
$this->assertEquals(time()+$a->getExpiresIn(), $v['expires']);
|
$this->assertEquals(time()+$a->getExpiresIn(), $v['expires']);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function test_issueAccessToken_refreshTokenGrant_customExpiresIn()
|
||||||
|
{
|
||||||
|
$this->client->shouldReceive('getClient')->andReturn(array(
|
||||||
|
'client_id' => 1234,
|
||||||
|
'client_secret' => 5678,
|
||||||
|
'redirect_uri' => 'http://foo/redirect',
|
||||||
|
'name' => 'Example Client'
|
||||||
|
));
|
||||||
|
|
||||||
|
$this->session->shouldReceive('validateRefreshToken')->andReturn(1);
|
||||||
|
$this->session->shouldReceive('validateAuthCode')->andReturn(1);
|
||||||
|
$this->session->shouldReceive('updateSession')->andReturn(null);
|
||||||
|
$this->session->shouldReceive('updateRefreshToken')->andReturn(null);
|
||||||
|
$this->session->shouldReceive('getAccessToken')->andReturn(null);
|
||||||
|
$this->session->shouldReceive('getScopes')->andReturn(array('id' => 1));
|
||||||
|
$this->session->shouldReceive('associateAccessToken')->andReturn(1);
|
||||||
|
$this->session->shouldReceive('associateRefreshToken')->andReturn(1);
|
||||||
|
$this->session->shouldReceive('associateScope')->andReturn(null);
|
||||||
|
|
||||||
|
$a = $this->returnDefault();
|
||||||
|
$grant = new OAuth2\Grant\RefreshToken($a);
|
||||||
|
$grant->setExpiresIn(30);
|
||||||
|
$a->addGrantType($grant);
|
||||||
|
|
||||||
|
$v = $a->issueAccessToken(array(
|
||||||
|
'grant_type' => 'refresh_token',
|
||||||
|
'client_id' => 1234,
|
||||||
|
'client_secret' => 5678,
|
||||||
|
'refresh_token' => 'abcdef',
|
||||||
|
));
|
||||||
|
|
||||||
|
$this->assertArrayHasKey('access_token', $v);
|
||||||
|
$this->assertArrayHasKey('token_type', $v);
|
||||||
|
$this->assertArrayHasKey('expires', $v);
|
||||||
|
$this->assertArrayHasKey('expires_in', $v);
|
||||||
|
$this->assertArrayHasKey('refresh_token', $v);
|
||||||
|
|
||||||
|
$this->assertNotEquals($a->getExpiresIn(), $v['expires_in']);
|
||||||
|
$this->assertNotEquals(time()+$a->getExpiresIn(), $v['expires']);
|
||||||
|
$this->assertEquals(30, $v['expires_in']);
|
||||||
|
$this->assertEquals(time()+30, $v['expires']);
|
||||||
|
}
|
||||||
}
|
}
|
Loading…
Reference in New Issue
Block a user