koel/tests/Integration/Services/YouTubeServiceTest.php

39 lines
916 B
PHP
Raw Normal View History

2017-08-05 18:55:02 +00:00
<?php
2017-12-09 22:39:34 +00:00
namespace Tests\Integration\Services;
2017-08-05 18:55:02 +00:00
use App\Services\YouTubeService;
use Exception;
2017-08-05 18:55:02 +00:00
use GuzzleHttp\Client;
use GuzzleHttp\Psr7\Response;
use Mockery as m;
use Tests\TestCase;
class YouTubeServiceTest extends TestCase
2017-08-05 18:55:02 +00:00
{
protected function tearDown()
{
m::close();
parent::tearDown();
}
/**
* @throws Exception
*/
public function testSearch()
2017-08-05 18:55:02 +00:00
{
$this->withoutEvents();
/** @var Client $client */
2017-08-05 18:55:02 +00:00
$client = m::mock(Client::class, [
2017-12-09 22:39:34 +00:00
'get' => new Response(200, [], file_get_contents(__DIR__.'../../../blobs/youtube/search.json')),
2017-08-05 18:55:02 +00:00
]);
$api = new YouTubeService($client);
2017-08-05 18:55:02 +00:00
$response = $api->search('Lorem Ipsum');
$this->assertEquals('Slipknot - Snuff [OFFICIAL VIDEO]', $response->items[0]->snippet->title);
$this->assertNotNull(cache('1492972ec5c8e6b3a9323ba719655ddb'));
}
}