diff --git a/tests/AccessTokenControllerTest.php b/tests/AccessTokenControllerTest.php index bd4aa4c24..00e7cad36 100644 --- a/tests/AccessTokenControllerTest.php +++ b/tests/AccessTokenControllerTest.php @@ -9,7 +9,10 @@ use PHPUnit\Framework\TestCase; use Illuminate\Container\Container; use Laravel\Passport\TokenRepository; +use Psr\Http\Message\ResponseInterface; use Illuminate\Contracts\Config\Repository; +use Psr\Http\Message\ServerRequestInterface; +use League\OAuth2\Server\AuthorizationServer; use Illuminate\Contracts\Debug\ExceptionHandler; use Laravel\Passport\Http\Controllers\AccessTokenController; @@ -22,27 +25,22 @@ public function tearDown() public function test_a_token_can_be_issued() { - $server = m::mock('League\OAuth2\Server\AuthorizationServer'); + $request = m::mock(ServerRequestInterface::class); + $response = m::type(ResponseInterface::class); $tokens = m::mock(TokenRepository::class); + $jwt = m::mock(Parser::class); $psrResponse = new Response(); $psrResponse->getBody()->write(json_encode(['access_token' => 'access-token'])); - $server->shouldReceive('respondToAccessTokenRequest')->with( - m::type('Psr\Http\Message\ServerRequestInterface'), m::type('Psr\Http\Message\ResponseInterface') - )->andReturn($psrResponse); - - $jwt = m::mock(Parser::class); - // $jwt->shouldReceive('parse->getClaim')->andReturn('token-id'); - - // $tokens->shouldReceive('find')->once()->with('token-id')->andReturn(new AccessTokenControllerTestStubToken); - // $tokens->shouldReceive('revokeOtherAccessTokens')->once()->with(1, 2, 'token-id', false); + $server = m::mock(AuthorizationServer::class); + $server->shouldReceive('respondToAccessTokenRequest') + ->with($request, $response) + ->andReturn($psrResponse); $controller = new AccessTokenController($server, $tokens, $jwt); - $this->assertEquals('{"access_token":"access-token"}', $controller->issueToken( - m::mock('Psr\Http\Message\ServerRequestInterface') - )->getContent()); + $this->assertEquals('{"access_token":"access-token"}', $controller->issueToken($request)->getContent()); } public function test_exceptions_are_handled() @@ -52,17 +50,19 @@ public function test_exceptions_are_handled() $exceptions->shouldReceive('report')->once(); $config->shouldReceive('get')->once()->andReturn(true); + $request = m::mock(ServerRequestInterface::class); + $response = m::type(ResponseInterface::class); $tokens = m::mock(TokenRepository::class); $jwt = m::mock(Parser::class); - $server = m::mock('League\OAuth2\Server\AuthorizationServer'); - $server->shouldReceive('respondToAccessTokenRequest')->with( - m::type('Psr\Http\Message\ServerRequestInterface'), m::type('Psr\Http\Message\ResponseInterface') - )->andThrow(new Exception('whoops')); + $server = m::mock(AuthorizationServer::class); + $server->shouldReceive('respondToAccessTokenRequest') + ->with($request, $response) + ->andThrow(new Exception('whoops')); $controller = new AccessTokenController($server, $tokens, $jwt); - $this->assertEquals('whoops', $controller->issueToken(m::mock('Psr\Http\Message\ServerRequestInterface'))->getOriginalContent()); + $this->assertEquals('whoops', $controller->issueToken($request)->getOriginalContent()); } } diff --git a/tests/ApiTokenCookieFactoryTest.php b/tests/ApiTokenCookieFactoryTest.php index 967ca977e..b21010317 100644 --- a/tests/ApiTokenCookieFactoryTest.php +++ b/tests/ApiTokenCookieFactoryTest.php @@ -5,7 +5,9 @@ use Mockery as m; use PHPUnit\Framework\TestCase; use Illuminate\Encryption\Encrypter; +use Illuminate\Contracts\Config\Repository; use Laravel\Passport\ApiTokenCookieFactory; +use Symfony\Component\HttpFoundation\Cookie; class ApiTokenCookieFactoryTest extends TestCase { @@ -16,7 +18,7 @@ public function tearDown() public function test_cookie_can_be_successfully_created() { - $config = m::mock('Illuminate\Contracts\Config\Repository'); + $config = m::mock(Repository::class); $config->shouldReceive('get')->with('session')->andReturn([ 'lifetime' => 120, 'path' => '/', @@ -29,6 +31,6 @@ public function test_cookie_can_be_successfully_created() $cookie = $factory->make(1, 'token'); - $this->assertInstanceOf('Symfony\Component\HttpFoundation\Cookie', $cookie); + $this->assertInstanceOf(Cookie::class, $cookie); } } diff --git a/tests/ApproveAuthorizationControllerTest.php b/tests/ApproveAuthorizationControllerTest.php index 5e41858af..93f3d2c1c 100644 --- a/tests/ApproveAuthorizationControllerTest.php +++ b/tests/ApproveAuthorizationControllerTest.php @@ -3,9 +3,12 @@ namespace Laravel\Passport\Tests; use Mockery as m; +use Illuminate\Http\Request; +use Psr\Http\Message\ResponseInterface; use Zend\Diactoros\Response; use PHPUnit\Framework\TestCase; use League\OAuth2\Server\AuthorizationServer; +use League\OAuth2\Server\RequestTypes\AuthorizationRequest; use Laravel\Passport\Http\Controllers\ApproveAuthorizationController; class ApproveAuthorizationControllerTest extends TestCase @@ -21,12 +24,12 @@ public function test_complete_authorization_request() $controller = new ApproveAuthorizationController($server); - $request = m::mock('Illuminate\Http\Request'); + $request = m::mock(Request::class); $request->shouldReceive('session')->andReturn($session = m::mock()); $session->shouldReceive('get') ->once() ->with('authRequest') - ->andReturn($authRequest = m::mock('League\OAuth2\Server\RequestTypes\AuthorizationRequest')); + ->andReturn($authRequest = m::mock(AuthorizationRequest::class)); $request->shouldReceive('user')->andReturn(new ApproveAuthorizationControllerFakeUser); $authRequest->shouldReceive('getClient->getIdentifier')->andReturn(1); $authRequest->shouldReceive('getUser->getIdentifier')->andReturn(2); @@ -37,7 +40,7 @@ public function test_complete_authorization_request() $psrResponse->getBody()->write('response'); $server->shouldReceive('completeAuthorizationRequest') - ->with($authRequest, m::type('Psr\Http\Message\ResponseInterface')) + ->with($authRequest, m::type(ResponseInterface::class)) ->andReturn($psrResponse); $this->assertEquals('response', $controller->approve($request)->getContent()); diff --git a/tests/AuthorizationControllerTest.php b/tests/AuthorizationControllerTest.php index 61a035cd9..dd1d6ad46 100644 --- a/tests/AuthorizationControllerTest.php +++ b/tests/AuthorizationControllerTest.php @@ -3,7 +3,14 @@ namespace Laravel\Passport\Tests; use Exception; +use Illuminate\Http\Request; +use Laravel\Passport\ClientRepository; +use Laravel\Passport\Token; +use Laravel\Passport\TokenRepository; +use League\OAuth2\Server\RequestTypes\AuthorizationRequest; use Mockery as m; +use Psr\Http\Message\ResponseInterface; +use Psr\Http\Message\ServerRequestInterface; use Zend\Diactoros\Response; use Laravel\Passport\Passport; use PHPUnit\Framework\TestCase; @@ -34,7 +41,7 @@ public function test_authorization_view_is_presented() $server->shouldReceive('validateAuthorizationRequest')->andReturn($authRequest = m::mock()); - $request = m::mock('Illuminate\Http\Request'); + $request = m::mock(Request::class); $request->shouldReceive('session')->andReturn($session = m::mock()); $session->shouldReceive('put')->with('authRequest', $authRequest); $request->shouldReceive('user')->andReturn('user'); @@ -51,14 +58,14 @@ public function test_authorization_view_is_presented() return 'view'; }); - $clients = m::mock('Laravel\Passport\ClientRepository'); + $clients = m::mock(ClientRepository::class); $clients->shouldReceive('find')->with(1)->andReturn('client'); - $tokens = m::mock('Laravel\Passport\TokenRepository'); + $tokens = m::mock(TokenRepository::class); $tokens->shouldReceive('findValidToken')->with('user', 'client')->andReturnNull(); $this->assertEquals('view', $controller->authorize( - m::mock('Psr\Http\Message\ServerRequestInterface'), $request, $clients, $tokens + m::mock(ServerRequestInterface::class), $request, $clients, $tokens )); } @@ -74,21 +81,17 @@ public function test_authorization_exceptions_are_handled() $server->shouldReceive('validateAuthorizationRequest')->andThrow(new Exception('whoops')); - $request = m::mock('Illuminate\Http\Request'); + $request = m::mock(Request::class); $request->shouldReceive('session')->andReturn($session = m::mock()); - $clients = m::mock('Laravel\Passport\ClientRepository'); - - $tokens = m::mock('Laravel\Passport\TokenRepository'); + $clients = m::mock(ClientRepository::class); + $tokens = m::mock(TokenRepository::class); $this->assertEquals('whoops', $controller->authorize( - m::mock('Psr\Http\Message\ServerRequestInterface'), $request, $clients, $tokens + m::mock(ServerRequestInterface::class), $request, $clients, $tokens )->getContent()); } - /** - * @group shithead - */ public function test_request_is_approved_if_valid_token_exists() { Passport::tokensCan([ @@ -102,12 +105,12 @@ public function test_request_is_approved_if_valid_token_exists() $psrResponse = new Response(); $psrResponse->getBody()->write('approved'); $server->shouldReceive('validateAuthorizationRequest') - ->andReturn($authRequest = m::mock('League\OAuth2\Server\RequestTypes\AuthorizationRequest')); + ->andReturn($authRequest = m::mock(AuthorizationRequest::class)); $server->shouldReceive('completeAuthorizationRequest') - ->with($authRequest, m::type('Psr\Http\Message\ResponseInterface')) + ->with($authRequest, m::type(ResponseInterface::class)) ->andReturn($psrResponse); - $request = m::mock('Illuminate\Http\Request'); + $request = m::mock(Request::class); $request->shouldReceive('user')->once()->andReturn($user = m::mock()); $user->shouldReceive('getKey')->andReturn(1); $request->shouldNotReceive('session'); @@ -117,17 +120,17 @@ public function test_request_is_approved_if_valid_token_exists() $authRequest->shouldReceive('setUser')->once()->andReturnNull(); $authRequest->shouldReceive('setAuthorizationApproved')->once()->with(true); - $clients = m::mock('Laravel\Passport\ClientRepository'); + $clients = m::mock(ClientRepository::class); $clients->shouldReceive('find')->with(1)->andReturn('client'); - $tokens = m::mock('Laravel\Passport\TokenRepository'); + $tokens = m::mock(TokenRepository::class); $tokens->shouldReceive('findValidToken') ->with($user, 'client') - ->andReturn($token = m::mock('Laravel\Passport\Token')); + ->andReturn($token = m::mock(Token::class)); $token->shouldReceive('getAttribute')->with('scopes')->andReturn(['scope-1']); $this->assertEquals('approved', $controller->authorize( - m::mock('Psr\Http\Message\ServerRequestInterface'), $request, $clients, $tokens + m::mock(ServerRequestInterface::class), $request, $clients, $tokens )->getContent()); } } diff --git a/tests/AuthorizedAccessTokenControllerTest.php b/tests/AuthorizedAccessTokenControllerTest.php index e2020ac1b..fe86be92c 100644 --- a/tests/AuthorizedAccessTokenControllerTest.php +++ b/tests/AuthorizedAccessTokenControllerTest.php @@ -23,17 +23,17 @@ class AuthorizedAccessTokenControllerTest extends TestCase */ protected $controller; - public function tearDown() + public function setUp() { - m::close(); + $this->tokenRepository = m::mock(TokenRepository::class); + $this->controller = new AuthorizedAccessTokenController($this->tokenRepository); } - public function setUp() + public function tearDown() { - $this->tokenRepository = m::mock(TokenRepository::class); - $this->controller = new AuthorizedAccessTokenController( - $this->tokenRepository - ); + m::close(); + + unset($this->tokenRepository, $this->controller); } public function test_tokens_can_be_retrieved_for_users() diff --git a/tests/BridgeAccessTokenRepositoryTest.php b/tests/BridgeAccessTokenRepositoryTest.php index 99860e024..18dc26d30 100644 --- a/tests/BridgeAccessTokenRepositoryTest.php +++ b/tests/BridgeAccessTokenRepositoryTest.php @@ -7,7 +7,9 @@ use PHPUnit\Framework\TestCase; use Laravel\Passport\Bridge\Scope; use Laravel\Passport\Bridge\Client; +use Laravel\Passport\TokenRepository; use Laravel\Passport\Bridge\AccessToken; +use Illuminate\Contracts\Events\Dispatcher; use Laravel\Passport\Bridge\AccessTokenRepository; class BridgeAccessTokenRepositoryTest extends TestCase @@ -21,9 +23,8 @@ public function test_access_tokens_can_be_persisted() { $expiration = Carbon::now(); - $tokenRepository = m::mock('Laravel\Passport\TokenRepository'); - - $events = m::mock('Illuminate\Contracts\Events\Dispatcher'); + $tokenRepository = m::mock(TokenRepository::class); + $events = m::mock(Dispatcher::class); $tokenRepository->shouldReceive('create')->once()->andReturnUsing(function ($array) use ($expiration) { $this->assertEquals(1, $array['id']); diff --git a/tests/BridgeClientRepositoryTest.php b/tests/BridgeClientRepositoryTest.php index 803955f6e..0a350a19a 100644 --- a/tests/BridgeClientRepositoryTest.php +++ b/tests/BridgeClientRepositoryTest.php @@ -4,6 +4,7 @@ use Mockery as m; use PHPUnit\Framework\TestCase; +use Laravel\Passport\Bridge\Client; use Laravel\Passport\ClientRepository; use Laravel\Passport\Bridge\ClientRepository as BridgeClientRepository; @@ -33,13 +34,15 @@ public function setUp() public function tearDown() { m::close(); + + unset($this->clientModelRepository, $this->repository); } public function test_can_get_client_for_auth_code_grant() { $client = $this->repository->getClientEntity(1, 'authorization_code', 'secret', true); - $this->assertInstanceOf('Laravel\Passport\Bridge\Client', $client); + $this->assertInstanceOf(Client::class, $client); $this->assertNull($this->repository->getClientEntity(1, 'authorization_code', 'wrong-secret', true)); $this->assertNull($this->repository->getClientEntity(1, 'client_credentials', 'wrong-secret', true)); } @@ -49,7 +52,10 @@ public function test_can_get_client_for_client_credentials_grant() $client = $this->clientModelRepository->findActive(1); $client->personal_access_client = true; - $this->assertInstanceOf('Laravel\Passport\Bridge\Client', $this->repository->getClientEntity(1, 'client_credentials', 'secret', true)); + $this->assertInstanceOf( + Client::class, + $this->repository->getClientEntity(1, 'client_credentials', 'secret', true) + ); $this->assertNull($this->repository->getClientEntity(1, 'authorization_code', 'secret', true)); } @@ -58,7 +64,7 @@ public function test_password_grant_is_permitted() $client = $this->clientModelRepository->findActive(1); $client->password_client = true; - $this->assertInstanceOf('Laravel\Passport\Bridge\Client', $this->repository->getClientEntity(1, 'password', 'secret')); + $this->assertInstanceOf(Client::class, $this->repository->getClientEntity(1, 'password', 'secret')); } public function test_password_grant_is_prevented() @@ -68,7 +74,7 @@ public function test_password_grant_is_prevented() public function test_authorization_code_grant_is_permitted() { - $this->assertInstanceOf('Laravel\Passport\Bridge\Client', $this->repository->getClientEntity(1, 'authorization_code', 'secret')); + $this->assertInstanceOf(Client::class, $this->repository->getClientEntity(1, 'authorization_code', 'secret')); } public function test_authorization_code_grant_is_prevented() @@ -84,7 +90,7 @@ public function test_personal_access_grant_is_permitted() $client = $this->clientModelRepository->findActive(1); $client->personal_access_client = true; - $this->assertInstanceOf('Laravel\Passport\Bridge\Client', $this->repository->getClientEntity(1, 'personal_access', 'secret')); + $this->assertInstanceOf(Client::class, $this->repository->getClientEntity(1, 'personal_access', 'secret')); } public function test_personal_access_grant_is_prevented() @@ -94,7 +100,7 @@ public function test_personal_access_grant_is_prevented() public function test_client_credentials_grant_is_permitted() { - $this->assertInstanceOf('Laravel\Passport\Bridge\Client', $this->repository->getClientEntity(1, 'client_credentials', 'secret')); + $this->assertInstanceOf(Client::class, $this->repository->getClientEntity(1, 'client_credentials', 'secret')); } public function test_client_credentials_grant_is_prevented() @@ -110,7 +116,7 @@ public function test_grant_types_allows_request() $client = $this->clientModelRepository->findActive(1); $client->grant_types = ['client_credentials']; - $this->assertInstanceOf('Laravel\Passport\Bridge\Client', $this->repository->getClientEntity(1, 'client_credentials', 'secret')); + $this->assertInstanceOf(Client::class, $this->repository->getClientEntity(1, 'client_credentials', 'secret')); } public function test_grant_types_disallows_request() diff --git a/tests/CheckClientCredentialsForAnyScopeTest.php b/tests/CheckClientCredentialsForAnyScopeTest.php index 753e3d1f2..887c6d882 100644 --- a/tests/CheckClientCredentialsForAnyScopeTest.php +++ b/tests/CheckClientCredentialsForAnyScopeTest.php @@ -5,6 +5,7 @@ use Mockery as m; use Illuminate\Http\Request; use PHPUnit\Framework\TestCase; +use League\OAuth2\Server\ResourceServer; use League\OAuth2\Server\Exception\OAuthServerException; use Laravel\Passport\Http\Middleware\CheckClientCredentialsForAnyScope; @@ -17,7 +18,7 @@ public function tearDown() public function test_request_is_passed_along_if_token_is_valid() { - $resourceServer = m::mock('League\OAuth2\Server\ResourceServer'); + $resourceServer = m::mock(ResourceServer::class); $resourceServer->shouldReceive('validateAuthenticatedRequest')->andReturn($psr = m::mock()); $psr->shouldReceive('getAttribute')->with('oauth_user_id')->andReturn(1); $psr->shouldReceive('getAttribute')->with('oauth_client_id')->andReturn(1); @@ -38,7 +39,7 @@ public function test_request_is_passed_along_if_token_is_valid() public function test_request_is_passed_along_if_token_has_any_required_scope() { - $resourceServer = m::mock('League\OAuth2\Server\ResourceServer'); + $resourceServer = m::mock(ResourceServer::class); $resourceServer->shouldReceive('validateAuthenticatedRequest')->andReturn($psr = m::mock()); $psr->shouldReceive('getAttribute')->with('oauth_user_id')->andReturn(1); $psr->shouldReceive('getAttribute')->with('oauth_client_id')->andReturn(1); @@ -62,7 +63,7 @@ public function test_request_is_passed_along_if_token_has_any_required_scope() */ public function test_exception_is_thrown_when_oauth_throws_exception() { - $resourceServer = m::mock('League\OAuth2\Server\ResourceServer'); + $resourceServer = m::mock(ResourceServer::class); $resourceServer->shouldReceive('validateAuthenticatedRequest')->andThrow( new OAuthServerException('message', 500, 'error type') ); @@ -82,7 +83,7 @@ public function test_exception_is_thrown_when_oauth_throws_exception() */ public function test_exception_is_thrown_if_token_does_not_have_required_scope() { - $resourceServer = m::mock('League\OAuth2\Server\ResourceServer'); + $resourceServer = m::mock(ResourceServer::class); $resourceServer->shouldReceive('validateAuthenticatedRequest')->andReturn($psr = m::mock()); $psr->shouldReceive('getAttribute')->with('oauth_user_id')->andReturn(1); $psr->shouldReceive('getAttribute')->with('oauth_client_id')->andReturn(1); diff --git a/tests/CheckClientCredentialsTest.php b/tests/CheckClientCredentialsTest.php index cf71c6b3a..3e2470f3b 100644 --- a/tests/CheckClientCredentialsTest.php +++ b/tests/CheckClientCredentialsTest.php @@ -2,10 +2,11 @@ namespace Laravel\Passport\Tests; -use League\OAuth2\Server\Exception\OAuthServerException; use Mockery as m; use Illuminate\Http\Request; use PHPUnit\Framework\TestCase; +use League\OAuth2\Server\ResourceServer; +use League\OAuth2\Server\Exception\OAuthServerException; use Laravel\Passport\Http\Middleware\CheckClientCredentials; class CheckClientCredentialsTest extends TestCase @@ -17,7 +18,7 @@ public function tearDown() public function test_request_is_passed_along_if_token_is_valid() { - $resourceServer = m::mock('League\OAuth2\Server\ResourceServer'); + $resourceServer = m::mock(ResourceServer::class); $resourceServer->shouldReceive('validateAuthenticatedRequest')->andReturn($psr = m::mock()); $psr->shouldReceive('getAttribute')->with('oauth_user_id')->andReturn(1); $psr->shouldReceive('getAttribute')->with('oauth_client_id')->andReturn(1); @@ -38,7 +39,7 @@ public function test_request_is_passed_along_if_token_is_valid() public function test_request_is_passed_along_if_token_and_scope_are_valid() { - $resourceServer = m::mock('League\OAuth2\Server\ResourceServer'); + $resourceServer = m::mock(ResourceServer::class); $resourceServer->shouldReceive('validateAuthenticatedRequest')->andReturn($psr = m::mock()); $psr->shouldReceive('getAttribute')->with('oauth_user_id')->andReturn(1); $psr->shouldReceive('getAttribute')->with('oauth_client_id')->andReturn(1); @@ -62,7 +63,7 @@ public function test_request_is_passed_along_if_token_and_scope_are_valid() */ public function test_exception_is_thrown_when_oauth_throws_exception() { - $resourceServer = m::mock('League\OAuth2\Server\ResourceServer'); + $resourceServer = m::mock(ResourceServer::class); $resourceServer->shouldReceive('validateAuthenticatedRequest')->andThrow( new OAuthServerException('message', 500, 'error type') ); @@ -82,7 +83,7 @@ public function test_exception_is_thrown_when_oauth_throws_exception() */ public function test_exception_is_thrown_if_token_does_not_have_required_scopes() { - $resourceServer = m::mock('League\OAuth2\Server\ResourceServer'); + $resourceServer = m::mock(ResourceServer::class); $resourceServer->shouldReceive('validateAuthenticatedRequest')->andReturn($psr = m::mock()); $psr->shouldReceive('getAttribute')->with('oauth_user_id')->andReturn(1); $psr->shouldReceive('getAttribute')->with('oauth_client_id')->andReturn(1); diff --git a/tests/ClientControllerTest.php b/tests/ClientControllerTest.php index 1cd8cc706..fdaac1bf2 100644 --- a/tests/ClientControllerTest.php +++ b/tests/ClientControllerTest.php @@ -6,6 +6,8 @@ use Illuminate\Http\Request; use Laravel\Passport\Client; use PHPUnit\Framework\TestCase; +use Laravel\Passport\ClientRepository; +use Illuminate\Contracts\Validation\Factory; use Laravel\Passport\Http\Rules\RedirectRule; use Symfony\Component\HttpFoundation\Response; use Laravel\Passport\Http\Controllers\ClientController; @@ -19,16 +21,16 @@ public function tearDown() public function test_all_the_clients_for_the_current_user_can_be_retrieved() { - $clients = m::mock('Laravel\Passport\ClientRepository'); + $clients = m::mock(ClientRepository::class); $clients->shouldReceive('activeForUser')->once()->with(1)->andReturn($client = m::mock()); $client->shouldReceive('makeVisible')->with('secret')->andReturn($client); - $request = m::mock('Illuminate\Http\Request'); + $request = m::mock(Request::class); $request->shouldReceive('user')->andReturn(new ClientControllerFakeUser); $controller = new ClientController( $clients, - m::mock('Illuminate\Contracts\Validation\Factory'), + m::mock(Factory::class), m::mock(RedirectRule::class) ); @@ -37,7 +39,7 @@ public function test_all_the_clients_for_the_current_user_can_be_retrieved() public function test_clients_can_be_stored() { - $clients = m::mock('Laravel\Passport\ClientRepository'); + $clients = m::mock(ClientRepository::class); $request = Request::create('/', 'GET', ['name' => 'client name', 'redirect' => 'http://localhost']); $request->setUserResolver(function () { @@ -51,7 +53,7 @@ public function test_clients_can_be_stored() $redirectRule = m::mock(RedirectRule::class); - $validator = m::mock('Illuminate\Contracts\Validation\Factory'); + $validator = m::mock(Factory::class); $validator->shouldReceive('make')->once()->with([ 'name' => 'client name', 'redirect' => 'http://localhost', @@ -70,8 +72,8 @@ public function test_clients_can_be_stored() public function test_clients_can_be_updated() { - $clients = m::mock('Laravel\Passport\ClientRepository'); - $client = m::mock('Laravel\Passport\Client'); + $clients = m::mock(ClientRepository::class); + $client = m::mock(Client::class); $clients->shouldReceive('findForUser')->with(1, 1)->andReturn($client); $request = Request::create('/', 'GET', ['name' => 'client name', 'redirect' => 'http://localhost']); @@ -84,12 +86,12 @@ public function test_clients_can_be_updated() }); $clients->shouldReceive('update')->once()->with( - m::type('Laravel\Passport\Client'), 'client name', 'http://localhost' + m::type(Client::class), 'client name', 'http://localhost' )->andReturn('response'); $redirectRule = m::mock(RedirectRule::class); - $validator = m::mock('Illuminate\Contracts\Validation\Factory'); + $validator = m::mock(Factory::class); $validator->shouldReceive('make')->once()->with([ 'name' => 'client name', 'redirect' => 'http://localhost', @@ -108,7 +110,7 @@ public function test_clients_can_be_updated() public function test_404_response_if_client_doesnt_belong_to_user() { - $clients = m::mock('Laravel\Passport\ClientRepository'); + $clients = m::mock(ClientRepository::class); $clients->shouldReceive('findForUser')->with(1, 1)->andReturnNull(); $request = Request::create('/', 'GET', ['name' => 'client name', 'redirect' => 'http://localhost']); @@ -122,7 +124,7 @@ public function test_404_response_if_client_doesnt_belong_to_user() $clients->shouldReceive('update')->never(); - $validator = m::mock('Illuminate\Contracts\Validation\Factory'); + $validator = m::mock(Factory::class); $controller = new ClientController( $clients, $validator, m::mock(RedirectRule::class) @@ -133,8 +135,8 @@ public function test_404_response_if_client_doesnt_belong_to_user() public function test_clients_can_be_deleted() { - $clients = m::mock('Laravel\Passport\ClientRepository'); - $client = m::mock('Laravel\Passport\Client'); + $clients = m::mock(ClientRepository::class); + $client = m::mock(Client::class); $clients->shouldReceive('findForUser')->with(1, 1)->andReturn($client); $request = Request::create('/', 'GET', ['name' => 'client name', 'redirect' => 'http://localhost']); @@ -147,10 +149,10 @@ public function test_clients_can_be_deleted() }); $clients->shouldReceive('delete')->once()->with( - m::type('Laravel\Passport\Client') + m::type(Client::class) )->andReturn('response'); - $validator = m::mock('Illuminate\Contracts\Validation\Factory'); + $validator = m::mock(Factory::class); $controller = new ClientController( $clients, $validator, m::mock(RedirectRule::class) @@ -163,7 +165,7 @@ public function test_clients_can_be_deleted() public function test_404_response_if_client_doesnt_belong_to_user_on_delete() { - $clients = m::mock('Laravel\Passport\ClientRepository'); + $clients = m::mock(ClientRepository::class); $clients->shouldReceive('findForUser')->with(1, 1)->andReturnNull(); $request = Request::create('/', 'GET', ['name' => 'client name', 'redirect' => 'http://localhost']); @@ -177,7 +179,7 @@ public function test_404_response_if_client_doesnt_belong_to_user_on_delete() $clients->shouldReceive('delete')->never(); - $validator = m::mock('Illuminate\Contracts\Validation\Factory'); + $validator = m::mock(Factory::class); $controller = new ClientController( $clients, $validator, m::mock(RedirectRule::class) diff --git a/tests/DenyAuthorizationControllerTest.php b/tests/DenyAuthorizationControllerTest.php index b2d68edc4..8b810f035 100644 --- a/tests/DenyAuthorizationControllerTest.php +++ b/tests/DenyAuthorizationControllerTest.php @@ -2,6 +2,7 @@ namespace Laravel\Passport\Tests; +use Illuminate\Http\Request; use Mockery as m; use PHPUnit\Framework\TestCase; use Illuminate\Contracts\Routing\ResponseFactory; @@ -21,7 +22,7 @@ public function test_authorization_can_be_denied() $controller = new DenyAuthorizationController($response); - $request = m::mock('Illuminate\Http\Request'); + $request = m::mock(Request::class); $request->shouldReceive('session')->andReturn($session = m::mock()); $request->shouldReceive('user')->andReturn(new DenyAuthorizationControllerFakeUser); @@ -50,7 +51,7 @@ public function test_authorization_can_be_denied_with_multiple_redirect_uris() $controller = new DenyAuthorizationController($response); - $request = m::mock('Illuminate\Http\Request'); + $request = m::mock(Request::class); $request->shouldReceive('session')->andReturn($session = m::mock()); $request->shouldReceive('user')->andReturn(new DenyAuthorizationControllerFakeUser); @@ -79,7 +80,7 @@ public function test_authorization_can_be_denied_implicit() $controller = new DenyAuthorizationController($response); - $request = m::mock('Illuminate\Http\Request'); + $request = m::mock(Request::class); $request->shouldReceive('session')->andReturn($session = m::mock()); $request->shouldReceive('user')->andReturn(new DenyAuthorizationControllerFakeUser); @@ -108,7 +109,7 @@ public function test_authorization_can_be_denied_with_existing_query_string() $controller = new DenyAuthorizationController($response); - $request = m::mock('Illuminate\Http\Request'); + $request = m::mock(Request::class); $request->shouldReceive('session')->andReturn($session = m::mock()); $request->shouldReceive('user')->andReturn(new DenyAuthorizationControllerFakeUser); @@ -141,7 +142,7 @@ public function test_auth_request_should_exist() $controller = new DenyAuthorizationController($response); - $request = m::mock('Illuminate\Http\Request'); + $request = m::mock(Request::class); $request->shouldReceive('session')->andReturn($session = m::mock()); $request->shouldReceive('user')->never(); diff --git a/tests/PassportTest.php b/tests/PassportTest.php index b56c18c4f..5cd5b4343 100644 --- a/tests/PassportTest.php +++ b/tests/PassportTest.php @@ -1,5 +1,7 @@ personalAccessClient(); diff --git a/tests/PersonalAccessTokenControllerTest.php b/tests/PersonalAccessTokenControllerTest.php index 15cf86db3..40c8f8e1f 100644 --- a/tests/PersonalAccessTokenControllerTest.php +++ b/tests/PersonalAccessTokenControllerTest.php @@ -8,6 +8,7 @@ use Laravel\Passport\Passport; use PHPUnit\Framework\TestCase; use Laravel\Passport\TokenRepository; +use Illuminate\Contracts\Validation\Factory; use Symfony\Component\HttpFoundation\Response; use Laravel\Passport\Http\Controllers\PersonalAccessTokenController; @@ -42,7 +43,7 @@ public function test_tokens_can_be_retrieved_for_users() return $user; }); - $validator = m::mock('Illuminate\Contracts\Validation\Factory'); + $validator = m::mock(Factory::class); $controller = new PersonalAccessTokenController($tokenRepository, $validator); $this->assertCount(1, $controller->forUser($request)); @@ -68,7 +69,7 @@ public function test_tokens_can_be_updated() return $user; }); - $validator = m::mock('Illuminate\Contracts\Validation\Factory'); + $validator = m::mock(Factory::class); $validator->shouldReceive('make')->once()->with([ 'name' => 'token name', 'scopes' => ['user', 'user-admin'], @@ -102,7 +103,7 @@ public function test_tokens_can_be_deleted() return $user; }); - $validator = m::mock('Illuminate\Contracts\Validation\Factory'); + $validator = m::mock(Factory::class); $controller = new PersonalAccessTokenController($tokenRepository, $validator); $response = $controller->destroy($request, 1); @@ -124,7 +125,7 @@ public function test_not_found_response_is_returned_if_user_doesnt_have_token() return $user; }); - $validator = m::mock('Illuminate\Contracts\Validation\Factory'); + $validator = m::mock(Factory::class); $controller = new PersonalAccessTokenController($tokenRepository, $validator); $this->assertEquals(404, $controller->destroy($request, 3)->status()); diff --git a/tests/PersonalAccessTokenFactoryTest.php b/tests/PersonalAccessTokenFactoryTest.php index d02c964ff..72fd65ccd 100644 --- a/tests/PersonalAccessTokenFactoryTest.php +++ b/tests/PersonalAccessTokenFactoryTest.php @@ -2,9 +2,14 @@ namespace Laravel\Passport\Tests; +use Lcobucci\JWT\Parser; use Mockery as m; use Laravel\Passport\Token; use PHPUnit\Framework\TestCase; +use Laravel\Passport\TokenRepository; +use Laravel\Passport\ClientRepository; +use League\OAuth2\Server\AuthorizationServer; +use Laravel\Passport\PersonalAccessTokenResult; use Laravel\Passport\PersonalAccessTokenFactory; class PersonalAccessTokenFactoryTest extends TestCase @@ -16,10 +21,10 @@ public function tearDown() public function test_access_token_can_be_created() { - $server = m::mock('League\OAuth2\Server\AuthorizationServer'); - $clients = m::mock('Laravel\Passport\ClientRepository'); - $tokens = m::mock('Laravel\Passport\TokenRepository'); - $jwt = m::mock('Lcobucci\JWT\Parser'); + $server = m::mock(AuthorizationServer::class); + $clients = m::mock(ClientRepository::class); + $tokens = m::mock(TokenRepository::class); + $jwt = m::mock(Parser::class); $factory = new PersonalAccessTokenFactory($server, $clients, $tokens, $jwt); @@ -38,7 +43,7 @@ public function test_access_token_can_be_created() $result = $factory->make(1, 'token', ['scopes']); - $this->assertInstanceOf('Laravel\Passport\PersonalAccessTokenResult', $result); + $this->assertInstanceOf(PersonalAccessTokenResult::class, $result); } } diff --git a/tests/TokenGuardTest.php b/tests/TokenGuardTest.php index decb1633e..09ab50079 100644 --- a/tests/TokenGuardTest.php +++ b/tests/TokenGuardTest.php @@ -11,7 +11,12 @@ use Laravel\Passport\HasApiTokens; use Illuminate\Container\Container; use Illuminate\Encryption\Encrypter; +use Laravel\Passport\TokenRepository; +use Laravel\Passport\ClientRepository; use Laravel\Passport\Guards\TokenGuard; +use League\OAuth2\Server\ResourceServer; +use Illuminate\Contracts\Auth\UserProvider; +use Illuminate\Contracts\Debug\ExceptionHandler; use League\OAuth2\Server\Exception\OAuthServerException; class TokenGuardTest extends TestCase @@ -23,11 +28,11 @@ public function tearDown() public function test_user_can_be_pulled_via_bearer_token() { - $resourceServer = m::mock('League\OAuth2\Server\ResourceServer'); - $userProvider = m::mock('Illuminate\Contracts\Auth\UserProvider'); - $tokens = m::mock('Laravel\Passport\TokenRepository'); - $clients = m::mock('Laravel\Passport\ClientRepository'); - $encrypter = m::mock('Illuminate\Contracts\Encryption\Encrypter'); + $resourceServer = m::mock(ResourceServer::class); + $userProvider = m::mock(UserProvider::class); + $tokens = m::mock(TokenRepository::class); + $clients = m::mock(ClientRepository::class); + $encrypter = m::mock(Encrypter::class); $guard = new TokenGuard($resourceServer, $userProvider, $tokens, $clients, $encrypter); @@ -52,14 +57,14 @@ public function test_no_user_is_returned_when_oauth_throws_exception() { $container = new Container; Container::setInstance($container); - $container->instance('Illuminate\Contracts\Debug\ExceptionHandler', $handler = m::mock()); - $handler->shouldReceive('report')->once()->with(m::type('League\OAuth2\Server\Exception\OAuthServerException')); + $container->instance(ExceptionHandler::class, $handler = m::mock()); + $handler->shouldReceive('report')->once()->with(m::type(OAuthServerException::class)); - $resourceServer = m::mock('League\OAuth2\Server\ResourceServer'); - $userProvider = m::mock('Illuminate\Contracts\Auth\UserProvider'); - $tokens = m::mock('Laravel\Passport\TokenRepository'); - $clients = m::mock('Laravel\Passport\ClientRepository'); - $encrypter = m::mock('Illuminate\Contracts\Encryption\Encrypter'); + $resourceServer = m::mock(ResourceServer::class); + $userProvider = m::mock(UserProvider::class); + $tokens = m::mock(TokenRepository::class); + $clients = m::mock(ClientRepository::class); + $encrypter = m::mock(Encrypter::class); $guard = new TokenGuard($resourceServer, $userProvider, $tokens, $clients, $encrypter); @@ -78,11 +83,11 @@ public function test_no_user_is_returned_when_oauth_throws_exception() public function test_null_is_returned_if_no_user_is_found() { - $resourceServer = m::mock('League\OAuth2\Server\ResourceServer'); - $userProvider = m::mock('Illuminate\Contracts\Auth\UserProvider'); - $tokens = m::mock('Laravel\Passport\TokenRepository'); - $clients = m::mock('Laravel\Passport\ClientRepository'); - $encrypter = m::mock('Illuminate\Contracts\Encryption\Encrypter'); + $resourceServer = m::mock(ResourceServer::class); + $userProvider = m::mock(UserProvider::class); + $tokens = m::mock(TokenRepository::class); + $clients = m::mock(ClientRepository::class); + $encrypter = m::mock(Encrypter::class); $guard = new TokenGuard($resourceServer, $userProvider, $tokens, $clients, $encrypter); @@ -98,10 +103,10 @@ public function test_null_is_returned_if_no_user_is_found() public function test_users_may_be_retrieved_from_cookies() { - $resourceServer = m::mock('League\OAuth2\Server\ResourceServer'); - $userProvider = m::mock('Illuminate\Contracts\Auth\UserProvider'); - $tokens = m::mock('Laravel\Passport\TokenRepository'); - $clients = m::mock('Laravel\Passport\ClientRepository'); + $resourceServer = m::mock(ResourceServer::class); + $userProvider = m::mock(UserProvider::class); + $tokens = m::mock(TokenRepository::class); + $clients = m::mock(ClientRepository::class); $encrypter = new Encrypter(str_repeat('a', 16)); $guard = new TokenGuard($resourceServer, $userProvider, $tokens, $clients, $encrypter); @@ -126,10 +131,10 @@ public function test_users_may_be_retrieved_from_cookies() public function test_cookie_xsrf_is_verified_against_header() { - $resourceServer = m::mock('League\OAuth2\Server\ResourceServer'); - $userProvider = m::mock('Illuminate\Contracts\Auth\UserProvider'); - $tokens = m::mock('Laravel\Passport\TokenRepository'); - $clients = m::mock('Laravel\Passport\ClientRepository'); + $resourceServer = m::mock(ResourceServer::class); + $userProvider = m::mock(UserProvider::class); + $tokens = m::mock(TokenRepository::class); + $clients = m::mock(ClientRepository::class); $encrypter = new Encrypter(str_repeat('a', 16)); $guard = new TokenGuard($resourceServer, $userProvider, $tokens, $clients, $encrypter); @@ -152,10 +157,10 @@ public function test_cookie_xsrf_is_verified_against_header() public function test_expired_cookies_may_not_be_used() { - $resourceServer = m::mock('League\OAuth2\Server\ResourceServer'); - $userProvider = m::mock('Illuminate\Contracts\Auth\UserProvider'); - $tokens = m::mock('Laravel\Passport\TokenRepository'); - $clients = m::mock('Laravel\Passport\ClientRepository'); + $resourceServer = m::mock(ResourceServer::class); + $userProvider = m::mock(UserProvider::class); + $tokens = m::mock(TokenRepository::class); + $clients = m::mock(ClientRepository::class); $encrypter = new Encrypter(str_repeat('a', 16)); $guard = new TokenGuard($resourceServer, $userProvider, $tokens, $clients, $encrypter); @@ -178,10 +183,10 @@ public function test_expired_cookies_may_not_be_used() public function test_csrf_check_can_be_disabled() { - $resourceServer = m::mock('League\OAuth2\Server\ResourceServer'); - $userProvider = m::mock('Illuminate\Contracts\Auth\UserProvider'); - $tokens = m::mock('Laravel\Passport\TokenRepository'); - $clients = m::mock('Laravel\Passport\ClientRepository'); + $resourceServer = m::mock(ResourceServer::class); + $userProvider = m::mock(UserProvider::class); + $tokens = m::mock(TokenRepository::class); + $clients = m::mock(ClientRepository::class); $encrypter = new Encrypter(str_repeat('a', 16)); $guard = new TokenGuard($resourceServer, $userProvider, $tokens, $clients, $encrypter); @@ -206,11 +211,11 @@ public function test_csrf_check_can_be_disabled() public function test_client_can_be_pulled_via_bearer_token() { - $resourceServer = m::mock('League\OAuth2\Server\ResourceServer'); - $userProvider = m::mock('Illuminate\Contracts\Auth\UserProvider'); - $tokens = m::mock('Laravel\Passport\TokenRepository'); - $clients = m::mock('Laravel\Passport\ClientRepository'); - $encrypter = m::mock('Illuminate\Contracts\Encryption\Encrypter'); + $resourceServer = m::mock(ResourceServer::class); + $userProvider = m::mock(UserProvider::class); + $tokens = m::mock(TokenRepository::class); + $clients = m::mock(ClientRepository::class); + $encrypter = m::mock(Encrypter::class); $guard = new TokenGuard($resourceServer, $userProvider, $tokens, $clients, $encrypter); @@ -230,14 +235,14 @@ public function test_no_client_is_returned_when_oauth_throws_exception() { $container = new Container; Container::setInstance($container); - $container->instance('Illuminate\Contracts\Debug\ExceptionHandler', $handler = m::mock()); - $handler->shouldReceive('report')->once()->with(m::type('League\OAuth2\Server\Exception\OAuthServerException')); + $container->instance(ExceptionHandler::class, $handler = m::mock()); + $handler->shouldReceive('report')->once()->with(m::type(OAuthServerException::class)); - $resourceServer = m::mock('League\OAuth2\Server\ResourceServer'); - $userProvider = m::mock('Illuminate\Contracts\Auth\UserProvider'); - $tokens = m::mock('Laravel\Passport\TokenRepository'); - $clients = m::mock('Laravel\Passport\ClientRepository'); - $encrypter = m::mock('Illuminate\Contracts\Encryption\Encrypter'); + $resourceServer = m::mock(ResourceServer::class); + $userProvider = m::mock(UserProvider::class); + $tokens = m::mock(TokenRepository::class); + $clients = m::mock(ClientRepository::class); + $encrypter = m::mock(Encrypter::class); $guard = new TokenGuard($resourceServer, $userProvider, $tokens, $clients, $encrypter); @@ -256,11 +261,11 @@ public function test_no_client_is_returned_when_oauth_throws_exception() public function test_null_is_returned_if_no_client_is_found() { - $resourceServer = m::mock('League\OAuth2\Server\ResourceServer'); - $userProvider = m::mock('Illuminate\Contracts\Auth\UserProvider'); - $tokens = m::mock('Laravel\Passport\TokenRepository'); - $clients = m::mock('Laravel\Passport\ClientRepository'); - $encrypter = m::mock('Illuminate\Contracts\Encryption\Encrypter'); + $resourceServer = m::mock(ResourceServer::class); + $userProvider = m::mock(UserProvider::class); + $tokens = m::mock(TokenRepository::class); + $clients = m::mock(ClientRepository::class); + $encrypter = m::mock(Encrypter::class); $guard = new TokenGuard($resourceServer, $userProvider, $tokens, $clients, $encrypter); @@ -276,10 +281,10 @@ public function test_null_is_returned_if_no_client_is_found() public function test_clients_may_be_retrieved_from_cookies() { - $resourceServer = m::mock('League\OAuth2\Server\ResourceServer'); - $userProvider = m::mock('Illuminate\Contracts\Auth\UserProvider'); - $tokens = m::mock('Laravel\Passport\TokenRepository'); - $clients = m::mock('Laravel\Passport\ClientRepository'); + $resourceServer = m::mock(ResourceServer::class); + $userProvider = m::mock(UserProvider::class); + $tokens = m::mock(TokenRepository::class); + $clients = m::mock(ClientRepository::class); $encrypter = new Encrypter(str_repeat('a', 16)); $guard = new TokenGuard($resourceServer, $userProvider, $tokens, $clients, $encrypter); diff --git a/tests/TransientTokenControllerTest.php b/tests/TransientTokenControllerTest.php index 151220163..f9e564665 100644 --- a/tests/TransientTokenControllerTest.php +++ b/tests/TransientTokenControllerTest.php @@ -5,6 +5,7 @@ use Mockery as m; use Illuminate\Http\Request; use PHPUnit\Framework\TestCase; +use Laravel\Passport\ApiTokenCookieFactory; use Symfony\Component\HttpFoundation\Cookie; use Laravel\Passport\Http\Controllers\TransientTokenController; @@ -17,7 +18,7 @@ public function tearDown() public function test_token_can_be_refreshed() { - $cookieFactory = m::mock('Laravel\Passport\ApiTokenCookieFactory'); + $cookieFactory = m::mock(ApiTokenCookieFactory::class); $cookieFactory->shouldReceive('make')->once()->with(1, 'token')->andReturn(new Cookie('cookie')); $request = m::mock(Request::class);