45 lines
1.4 KiB
PHP
45 lines
1.4 KiB
PHP
|
<?php
|
||
|
|
||
|
namespace OAuth2\OpenID\Controller;
|
||
|
|
||
|
use OAuth2\Storage\Bootstrap;
|
||
|
use OAuth2\Server;
|
||
|
use OAuth2\Request;
|
||
|
use OAuth2\Response;
|
||
|
|
||
|
class UserInfoControllerTest extends \PHPUnit_Framework_TestCase
|
||
|
{
|
||
|
public function testCreateController()
|
||
|
{
|
||
|
$tokenType = new \OAuth2\TokenType\Bearer();
|
||
|
$storage = new \OAuth2\Storage\Memory();
|
||
|
$controller = new UserInfoController($tokenType, $storage, $storage);
|
||
|
|
||
|
$response = new Response();
|
||
|
$controller->handleUserInfoRequest(new Request(), $response);
|
||
|
$this->assertEquals(401, $response->getStatusCode());
|
||
|
}
|
||
|
|
||
|
public function testValidToken()
|
||
|
{
|
||
|
$server = $this->getTestServer();
|
||
|
$request = Request::createFromGlobals();
|
||
|
$request->headers['AUTHORIZATION'] = 'Bearer accesstoken-openid-connect';
|
||
|
$response = new Response();
|
||
|
|
||
|
$server->handleUserInfoRequest($request, $response);
|
||
|
$parameters = $response->getParameters();
|
||
|
$this->assertEquals($parameters['sub'], 'testuser');
|
||
|
$this->assertEquals($parameters['email'], 'testuser@test.com');
|
||
|
$this->assertEquals($parameters['email_verified'], true);
|
||
|
}
|
||
|
|
||
|
private function getTestServer($config = array())
|
||
|
{
|
||
|
$storage = Bootstrap::getInstance()->getMemoryStorage();
|
||
|
$server = new Server($storage, $config);
|
||
|
|
||
|
return $server;
|
||
|
}
|
||
|
}
|