Fixed broken example tests

This commit is contained in:
Alex Bilbie 2014-07-22 10:58:15 +01:00
parent f40ada9ac7
commit 7067a35d3a
22 changed files with 2160 additions and 2954 deletions

3
.gitignore vendored
View File

@ -7,4 +7,5 @@
/examples/nosql/vendor
/examples/nosql/config/oauth2.sqlite3
/examples/relational/composer.lock
/tests/functional/tests/_log
/tests/functional/tests/_log
tests/_output/*

View File

@ -19,14 +19,13 @@ before_script:
- php -S localhost:8000 &
- sleep 3
- cd ../..
- wget http://codeception.com/codecept.phar
- mkdir tests/codecept/tests/_log
- chmod -R 777 tests/codecept/tests/_log
- mkdir tests/functional/tests/_log
- chmod -R 777 tests/functional/tests/_log
script:
- mkdir -p build/logs
- phpunit --coverage-text
- php codecept.phar run api -c tests/codecept/codeception.yml
- ./vendor/bin/codecept run api -d
- ./vendor/bin/phpcs src --standard=psr2
after_script:

View File

@ -1,14 +1,13 @@
actor: Tester
paths:
tests: tests
log: tests/_log
log: tests/_output
data: tests/_data
helpers: tests/_helpers
helpers: tests/_support
settings:
bootstrap: _bootstrap.php
suite_class: \PHPUnit_Framework_TestSuite
colors: true
memory_limit: 1024M
log: true
modules:
config:
Db:

View File

@ -13,7 +13,7 @@
"mockery/mockery": "~0.9",
"league/phpunit-coverage-listener": "~1.0",
"squizlabs/php_codesniffer": "1.*",
"codeception/codeception": "2.0.2"
"codeception/codeception": "2.0.*"
},
"repositories": [
{

View File

@ -24,9 +24,9 @@ class AccessTokenStorage extends Adapter implements AccessTokenInterface
->get();
if (count($result) === 1) {
$token = new AccessTokenEntity($this->server);
$token->setExpireTime($result[0]['expire_time']);
$token->setToken($result[0]['access_token']);
$token = (new AccessTokenEntity($this->server))
->setId($result[0]['access_token'])
->setExpireTime($result[0]['expire_time']);
return $token;
}
@ -50,16 +50,17 @@ class AccessTokenStorage extends Adapter implements AccessTokenInterface
$result = Capsule::table('oauth_access_token_scopes')
->select(['oauth_scopes.id', 'oauth_scopes.description'])
->join('oauth_scopes', 'oauth_access_token_scopes.scope', '=', 'oauth_scopes.id')
->where('access_token', $token->getToken())
->where('access_token', $token->getId())
->get();
$response = [];
if (count($result) > 0) {
foreach ($result as $row) {
$scope = new ScopeEntity($this->server);
$scope->setId($row['id']);
$scope->setDescription($row['description']);
$scope = (new ScopeEntity($this->server))->hydrate([
'id' => $row['id'],
'description' => $row['description']
]);
$response[] = $scope;
}
}

View File

@ -23,7 +23,7 @@ class AuthCodeStorage extends Adapter implements AuthCodeInterface
if (count($result) === 1) {
$token = new AuthCodeEntity($this->server);
$token->setToken($result[0]['auth_code']);
$token->setId($result[0]['auth_code']);
return $token;
}

View File

@ -10,6 +10,7 @@ use \League\OAuth2\Server\ResourceServer;
use \RelationalExample\Storage;
use \RelationalExample\Model;
use Illuminate\Database\Capsule\Manager as Capsule;
use \League\Event\Emitter;
include __DIR__.'/vendor/autoload.php';

View File

@ -2,7 +2,8 @@
"require": {
"illuminate/database": "4.1.*",
"orno/route": "1.*",
"ircmaxell/password-compat": "1.0.2"
"ircmaxell/password-compat": "1.0.2",
"league/event": "0.2.0"
},
"autoload": {
"psr-4": {

View File

@ -0,0 +1,10 @@
<?php
namespace Codeception\Module;
// here you can define custom actions
// all public methods declared in helper class will be available in $I
class ApiHelper extends \Codeception\Module
{
}

View File

@ -1,4 +1,4 @@
class_name: ApiGuy
class_name: ApiTester
modules:
enabled: [PhpBrowser, REST, ApiHelper]
config:

2120
tests/api/ApiTester.php Normal file

File diff suppressed because it is too large Load Diff

View File

@ -1,5 +1,5 @@
<?php
$I = new ApiGuy($scenario);
$I = new ApiTester($scenario);
$I->wantTo('get all users with all fields');
$I->sendGET('api.php/users?access_token=iamgod');
$I->seeResponseCodeIs(200);

View File

@ -1,5 +1,5 @@
<?php
$I = new ApiGuy($scenario);
$I = new ApiTester($scenario);
$I->wantTo('get all users with all basic and email fields');
$I->sendGET('api.php/users?access_token=iamphil');
$I->seeResponseCodeIs(200);

View File

@ -1,5 +1,5 @@
<?php
$I = new ApiGuy($scenario);
$I = new ApiTester($scenario);
$I->wantTo('get all users with basic and photo fields');
$I->sendGET('api.php/users?access_token=iamalex');
$I->seeResponseCodeIs(200);

View File

@ -1,5 +1,5 @@
<?php
$I = new ApiGuy($scenario);
$I = new ApiTester($scenario);
$I->wantTo('get all users with an invalid access token');
$I->sendGET('api.php/users?access_token=foobar');
$I->seeResponseCodeIs(401);

View File

@ -1,5 +1,5 @@
<?php
$I = new ApiGuy($scenario);
$I = new ApiTester($scenario);
$I->wantTo('get all users without an access token');
$I->sendGET('api.php/users');
$I->seeResponseCodeIs(400);

View File

@ -1,5 +1,5 @@
<?php
$I = new ApiGuy($scenario);
$I = new ApiTester($scenario);
$I->wantTo('get all users with header access token');
$I->haveHttpHeader('Authorization', 'Bearer iamgod');
$I->sendGET('api.php/users');

2
tests/api/_bootstrap.php Normal file
View File

@ -0,0 +1,2 @@
<?php
// Here you can initialize variables that will be available to your tests

View File

@ -1,8 +0,0 @@
<?php
namespace Codeception\Module;
// here you can define custom functions for ApiGuy
class ApiHelper extends \Codeception\Module
{
}

File diff suppressed because it is too large Load Diff

View File

@ -1,2 +0,0 @@
<?php
// Here you can initialize variables that will for your tests