1
0
Fork 0
mirror of https://github.com/DanielnetoDotCom/YouPHPTube synced 2025-10-04 18:29:39 +02:00
Oinktube/plugin/VimeoAPI/vimeo-api/tests/Vimeo/VimeoTest.php
daniel 8f8c81b565 Add support to Upload the videos to Vimeo with the Vimeo API
Fix Stripe
Make Videos manager responsive
2020-02-01 11:08:58 -03:00

253 lines
7.8 KiB
PHP

<?php
namespace Vimeo;
use PHPUnit\Framework\TestCase;
use Vimeo\Vimeo;
class VimeoTest extends TestCase
{
protected $clientId = 'client_id';
protected $clientSecret = 'client_secret';
public function testRequestGetUserInformation()
{
// Arrange
$vimeo = new Vimeo($this->clientId, $this->clientSecret);
// Act
$result = $vimeo->request('/users/userwillnotbefound');
// Assert
$this->assertSame('You must provide a valid authenticated access token.', $result['body']['error']);
}
public function testRequestGetUserInformationWithAccessToken()
{
// Arrange
$vimeo = new Vimeo($this->clientId, $this->clientSecret, 'fake_access_token');
// Act
$result = $vimeo->request('/users/userwillnotbefound');
// Assert
$this->assertSame('You must provide a valid authenticated access token.', $result['body']['error']);
}
public function testRequestGetUserInformationWithParams()
{
// Arrange
$vimeo = new Vimeo($this->clientId, $this->clientSecret);
// Act
$result = $vimeo->request('/users/userwillnotbefound', array('fake_key=fake_value'));
// Assert
$this->assertSame('You must provide a valid authenticated access token.', $result['body']['error']);
}
public function testGetToken()
{
// Arrange
$vimeo = new Vimeo($this->clientId, $this->clientSecret);
// Act
$vimeo->setToken('fake_access_token');
// Assert
$this->assertSame('fake_access_token', $vimeo->getToken());
}
public function testGetCurlOptions()
{
// Arrange
$vimeo = new Vimeo($this->clientId, $this->clientSecret);
// Act
$vimeo->setCurlOptions(array('custom_name' => 'custom_value'));
$result = $vimeo->getCurlOptions();
// Assert
$this->assertInternalType('array', $result);
$this->assertSame('custom_value', $result['custom_name']);
}
public function testAccessTokenWithCallingFakeRedirectUri()
{
// Arrange
$vimeo = new Vimeo($this->clientId, $this->clientSecret);
// Act
$result = $vimeo->accessToken('fake_auth_code', 'https://fake.redirect.uri');
// Assert
$this->assertSame('invalid_client', $result['body']['error']);
}
public function testClientCredentialsWithDefaultScope()
{
// Arrange
$vimeo = new Vimeo($this->clientId, $this->clientSecret);
// Act
$result = $vimeo->clientCredentials();
// Assert
$this->assertSame('You must provide a valid authenticated access token.', $result['body']['error']);
}
public function testClientCredentialsWithArrayScope()
{
// Arrange
$vimeo = new Vimeo($this->clientId, $this->clientSecret);
// Act
$result = $vimeo->clientCredentials(array('public'));
// Assert
$this->assertSame('You must provide a valid authenticated access token.', $result['body']['error']);
}
public function testBuildAuthorizationEndpointWithDefaultScopeAndNullState()
{
// Arrange
$vimeo = new Vimeo($this->clientId, $this->clientSecret);
// Act
$result = $vimeo->buildAuthorizationEndpoint('https://fake.redirect.uri');
// Assert
$this->assertSame('https://api.vimeo.com/oauth/authorize?response_type=code&client_id=client_id&redirect_uri=https%3A%2F%2Ffake.redirect.uri&scope=public', $result);
}
public function testBuildAuthorizationEndpointWithNullScopeAndNullState()
{
// Arrange
$vimeo = new Vimeo($this->clientId, $this->clientSecret);
// Act
$result = $vimeo->buildAuthorizationEndpoint('https://fake.redirect.uri', null);
// Assert
$this->assertSame('https://api.vimeo.com/oauth/authorize?response_type=code&client_id=client_id&redirect_uri=https%3A%2F%2Ffake.redirect.uri&scope=public', $result);
}
public function testBuildAuthorizationEndpointWithArrayScopeAndNullState()
{
// Arrange
$vimeo = new Vimeo($this->clientId, $this->clientSecret);
// Act
$result = $vimeo->buildAuthorizationEndpoint('https://fake.redirect.uri', array('public', 'private'));
// Assert
$this->assertSame('https://api.vimeo.com/oauth/authorize?response_type=code&client_id=client_id&redirect_uri=https%3A%2F%2Ffake.redirect.uri&scope=public+private', $result);
}
public function testBuildAuthorizationEndpointWithArrayScopeAndState()
{
// Arrange
$vimeo = new Vimeo($this->clientId, $this->clientSecret);
// Act
$result = $vimeo->buildAuthorizationEndpoint('https://fake.redirect.uri', array('public'), 'fake_state');
// Assert
$this->assertSame('https://api.vimeo.com/oauth/authorize?response_type=code&client_id=client_id&redirect_uri=https%3A%2F%2Ffake.redirect.uri&scope=public&state=fake_state', $result);
}
/**
* @expectedException Vimeo\Exceptions\VimeoUploadException
*/
public function testUploadWithNonExistedFile()
{
// Arrange
$vimeo = new Vimeo($this->clientId, $this->clientSecret);
// Act
$result = $vimeo->upload('./the_file_is_invalid');
}
/**
* @expectedException Vimeo\Exceptions\VimeoUploadException
*/
public function testUploadWithInvalidParamShouldReturnVimeoRequestException()
{
// Arrange
$vimeo = new Vimeo($this->clientId, $this->clientSecret);
// Act
$result = $vimeo->upload(__DIR__.'/../../composer.json', array('invalid_param'));
}
/**
* @expectedException Vimeo\Exceptions\VimeoUploadException
*/
public function testReplaceWithNonExistedFile()
{
// Arrange
$vimeo = new Vimeo($this->clientId, $this->clientSecret);
// Act
$result = $vimeo->replace('https://vimeo.com/241711006', './the_file_is_invalid');
}
/**
* @expectedException Vimeo\Exceptions\VimeoUploadException
*/
public function testUploadImageWithNonExistedFile()
{
// Arrange
$vimeo = new Vimeo($this->clientId, $this->clientSecret);
// Act
$result = $vimeo->uploadImage('https://vimeo.com/241711006', './the_file_is_invalid');
}
/**
* @expectedException Vimeo\Exceptions\VimeoUploadException
*/
public function testUploadTexttrackWithNonExistedFile()
{
// Arrange
$vimeo = new Vimeo($this->clientId, $this->clientSecret);
// Act
$result = $vimeo->uploadTexttrack('https://vimeo.com/241711006', './the_file_is_invalid', 'fake_track_type', 'zh_TW');
}
/**
* @expectedException Vimeo\Exceptions\VimeoRequestException
*/
public function testReplaceWithVideoUriShouldReturnVimeoRequestException()
{
// Arrange
$vimeo = new Vimeo($this->clientId, $this->clientSecret);
// Act
$result = $vimeo->replace('https://vimeo.com/241711006', __DIR__.'/../../composer.json');
}
/**
* @expectedException Vimeo\Exceptions\VimeoRequestException
*/
public function testUploadImageWithPictureUriShouldReturnVimeoRequestException()
{
// Arrange
$vimeo = new Vimeo($this->clientId, $this->clientSecret);
// Act
$result = $vimeo->uploadImage('https://vimeo.com/user59081751', __DIR__.'/../../composer.json');
}
/**
* @expectedException Vimeo\Exceptions\VimeoRequestException
*/
public function testUploadTexttrackWithPictureUriAndInvalidParamShouldReturnVimeoRequestException()
{
// Arrange
$vimeo = new Vimeo($this->clientId, $this->clientSecret);
// Act
$result = $vimeo->uploadTexttrack('https://vimeo.com/user59081751', __DIR__.'/../../composer.json', 'fake_track_type', 'zh_TW');
}
}