TwitterServerTest.php 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. <?php
  2. namespace League\OAuth1\Client\Tests;
  3. use Generator;
  4. use League\OAuth1\Client\Server\Twitter;
  5. use PHPUnit\Framework\TestCase;
  6. class TwitterServerTest extends TestCase
  7. {
  8. public function sampleTemporaryCredentialUrls(): Generator
  9. {
  10. yield 'No application scope' => [
  11. null, 'https://api.twitter.com/oauth/request_token',
  12. ];
  13. yield "Read" => [
  14. 'read', 'https://api.twitter.com/oauth/request_token?x_auth_access_type=read',
  15. ];
  16. yield "Write" => [
  17. 'write', 'https://api.twitter.com/oauth/request_token?x_auth_access_type=write',
  18. ];
  19. }
  20. /** @dataProvider sampleTemporaryCredentialUrls */
  21. public function testItProvidesNoApplicationScopeByDefault(?string $applicationScope, string $url): void
  22. {
  23. $twitter = new Twitter([
  24. 'identifier' => 'mykey',
  25. 'secret' => 'mysecret',
  26. 'callback_uri' => 'http://app.dev/',
  27. 'scope' => $applicationScope,
  28. ]);
  29. self::assertEquals($url, $twitter->urlTemporaryCredentials());
  30. }
  31. }