Setup base unit testing framework
parent
6387ae33fe
commit
4ce38514ae
|
@ -1,5 +1,8 @@
|
||||||
/vendor/
|
vendor/
|
||||||
/composer.lock
|
composer.lock
|
||||||
|
composer.phar
|
||||||
.DS_Store
|
.DS_Store
|
||||||
/testing/
|
testing/
|
||||||
/nbproject/private/
|
nbproject/private/
|
||||||
|
test/log
|
||||||
|
build
|
||||||
|
|
|
@ -9,7 +9,7 @@
|
||||||
"require-dev": {
|
"require-dev": {
|
||||||
"phpunit/phpunit": "*",
|
"phpunit/phpunit": "*",
|
||||||
"fabpot/php-cs-fixer": "0.4.*@dev",
|
"fabpot/php-cs-fixer": "0.4.*@dev",
|
||||||
"fzaninotto/faker": "*"
|
"mockery/mockery": "dev-master"
|
||||||
},
|
},
|
||||||
"keywords": [
|
"keywords": [
|
||||||
"oauth",
|
"oauth",
|
||||||
|
|
14
phpunit.xml
14
phpunit.xml
|
@ -2,22 +2,20 @@
|
||||||
<phpunit colors="true" convertNoticesToExceptions="true" convertWarningsToExceptions="true" stopOnError="false" stopOnFailure="false" stopOnIncomplete="false" stopOnSkipped="false" bootstrap="tests/Bootstrap.php">
|
<phpunit colors="true" convertNoticesToExceptions="true" convertWarningsToExceptions="true" stopOnError="false" stopOnFailure="false" stopOnIncomplete="false" stopOnSkipped="false" bootstrap="tests/Bootstrap.php">
|
||||||
<testsuites>
|
<testsuites>
|
||||||
<testsuite name="OAuth Client">
|
<testsuite name="OAuth Client">
|
||||||
<directory suffix="Test.php">tests</directory>
|
<directory>tests</directory>
|
||||||
</testsuite>
|
</testsuite>
|
||||||
</testsuites>
|
</testsuites>
|
||||||
<filter>
|
<filter>
|
||||||
<blacklist>
|
<blacklist>
|
||||||
<directory suffix=".php">PEAR_INSTALL_DIR</directory>
|
<directory suffix=".php">vendor</directory>
|
||||||
<directory suffix=".php">PHP_LIBDIR</directory>
|
|
||||||
<directory suffix=".php">vendor/composer</directory>
|
|
||||||
<directory suffix=".php">vendor/phpunit</directory>
|
|
||||||
<directory suffix=".php">tests</directory>
|
<directory suffix=".php">tests</directory>
|
||||||
|
<directory suffix=".php">build</directory>
|
||||||
</blacklist>
|
</blacklist>
|
||||||
</filter>
|
</filter>
|
||||||
<logging>
|
<logging>
|
||||||
<log type="coverage-html" target="coverage" title="lncd/OAuth-client" charset="UTF-8" yui="true" highlight="true" lowUpperBound="50" highLowerBound="90"/>
|
<log type="coverage-html" target="build/log/coverage" title="lncd/OAuth-client" charset="UTF-8" yui="true" highlight="true" lowUpperBound="50" highLowerBound="90"/>
|
||||||
<log type="coverage-text" target="php://stdout" title="lncd/OAuth-client" charset="UTF-8" yui="true" highlight="true" lowUpperBound="50" highLowerBound="90"/>
|
<log type="coverage-text" target="php://stdout" title="lncd/OAuth-client" charset="UTF-8" yui="true" highlight="true" lowUpperBound="50" highLowerBound="90"/>
|
||||||
<log type="coverage-clover" target="logs/clover.xml"/>
|
<log type="coverage-clover" target="build/log/clover.xml"/>
|
||||||
<log type="junit" target="logs/junit.xml" logIncompleteSkipped="false"/>
|
<log type="junit" target="build/log/junit.xml" logIncompleteSkipped="false"/>
|
||||||
</logging>
|
</logging>
|
||||||
</phpunit>
|
</phpunit>
|
||||||
|
|
|
@ -64,7 +64,6 @@ abstract class IdentityProvider
|
||||||
public function getAuthorizationUrl($options = array())
|
public function getAuthorizationUrl($options = array())
|
||||||
{
|
{
|
||||||
$state = md5(uniqid(rand(), true));
|
$state = md5(uniqid(rand(), true));
|
||||||
setcookie($this->name.'_authorize_state', $state);
|
|
||||||
|
|
||||||
$params = array(
|
$params = array(
|
||||||
'client_id' => $this->clientId,
|
'client_id' => $this->clientId,
|
||||||
|
|
|
@ -1,5 +1,43 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
if ( ! @include_once __DIR__ . '/../vendor/autoload.php') {
|
namespace LeagueTests\OAuth2\Client;
|
||||||
exit("You must set up the project dependencies, run the following commands:\n> wget http://getcomposer.org/composer.phar\n> php composer.phar install\n");
|
|
||||||
|
error_reporting(E_ALL | E_STRICT);
|
||||||
|
chdir(__DIR__);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Test bootstrap, for setting up autoloading
|
||||||
|
*
|
||||||
|
* @subpackage UnitTest
|
||||||
|
*/
|
||||||
|
class Bootstrap
|
||||||
|
{
|
||||||
|
protected static $serviceManager;
|
||||||
|
|
||||||
|
public static function init()
|
||||||
|
{
|
||||||
|
static::initAutoloader();
|
||||||
|
}
|
||||||
|
|
||||||
|
protected static function initAutoloader()
|
||||||
|
{
|
||||||
|
$vendorPath = static::findParentPath('vendor');
|
||||||
|
|
||||||
|
$loader = include $vendorPath . '/autoload.php';
|
||||||
|
}
|
||||||
|
|
||||||
|
protected static function findParentPath($path)
|
||||||
|
{
|
||||||
|
$dir = __DIR__;
|
||||||
|
$previousDir = '.';
|
||||||
|
while (!is_dir($dir . '/' . $path)) {
|
||||||
|
$dir = dirname($dir);
|
||||||
|
if ($previousDir === $dir) return false;
|
||||||
|
$previousDir = $dir;
|
||||||
|
}
|
||||||
|
|
||||||
|
return $dir . '/' . $path;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Bootstrap::init();
|
||||||
|
|
|
@ -0,0 +1,54 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace LeagueTest\OAuth2\Client\Provider;
|
||||||
|
|
||||||
|
use \Mockery as m;
|
||||||
|
use Zend\Uri\UriFactory;
|
||||||
|
|
||||||
|
class GithubTest extends \PHPUnit_Framework_TestCase
|
||||||
|
{
|
||||||
|
protected $provider;
|
||||||
|
|
||||||
|
protected function setUp()
|
||||||
|
{
|
||||||
|
$this->provider = new \League\OAuth2\Client\Provider\Github(array(
|
||||||
|
'clientId' => 'mock',
|
||||||
|
'clientSecret' => 'mock_secret',
|
||||||
|
'redirectUri' => 'none',
|
||||||
|
));
|
||||||
|
}
|
||||||
|
|
||||||
|
protected function tearDown()
|
||||||
|
{
|
||||||
|
# m::close();
|
||||||
|
}
|
||||||
|
|
||||||
|
public function testAuthorizationUrl()
|
||||||
|
{
|
||||||
|
$url = $this->provider->getAuthorizationUrl();
|
||||||
|
$uri = parse_url($url);
|
||||||
|
parse_str($uri['query'], $query);
|
||||||
|
|
||||||
|
$this->assertArrayHasKey('client_id', $query);
|
||||||
|
$this->assertArrayHasKey('redirect_uri', $query);
|
||||||
|
$this->assertArrayHasKey('state', $query);
|
||||||
|
$this->assertArrayHasKey('scope', $query);
|
||||||
|
$this->assertArrayHasKey('response_type', $query);
|
||||||
|
$this->assertArrayHasKey('approval_prompt', $query);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function testUrlAccessToken()
|
||||||
|
{
|
||||||
|
$url = $this->provider->urlAccessToken();
|
||||||
|
$uri = parse_url($url);
|
||||||
|
|
||||||
|
$this->assertEquals('/login/oauth/access_token', $uri['path']);
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
public function testGetAccessToken()
|
||||||
|
{
|
||||||
|
$t = $this->provider->getAccessToken('authorization_code', array('code' => 'mock_authorization_code'));
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
}
|
Loading…
Reference in New Issue