OAuthTwoTestProviderStub.php 960 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. <?php
  2. namespace SocialiteProviders\Manager\Test\Stubs;
  3. use Mockery as m;
  4. use SocialiteProviders\Manager\OAuth2\AbstractProvider;
  5. use SocialiteProviders\Manager\OAuth2\User;
  6. use stdClass;
  7. class OAuthTwoTestProviderStub extends AbstractProvider
  8. {
  9. public const PROVIDER_NAME = 'test';
  10. public $http;
  11. public static function providerName(): string
  12. {
  13. return 'test';
  14. }
  15. protected function getAuthUrl($state)
  16. {
  17. return 'http://auth.url';
  18. }
  19. protected function getTokenUrl()
  20. {
  21. return 'http://token.url';
  22. }
  23. protected function getUserByToken($token)
  24. {
  25. return ['id' => 'foo'];
  26. }
  27. protected function mapUserToObject(array $user)
  28. {
  29. return (new User())->map(['id' => $user['id']]);
  30. }
  31. protected function getHttpClient()
  32. {
  33. if ($this->http) {
  34. return $this->http;
  35. }
  36. return $this->http = m::mock(stdClass::class);
  37. }
  38. }