fixup! refactor: New Video class
This commit is contained in:
parent
4c9af8ad1d
commit
06a631c892
14 changed files with 23 additions and 40 deletions
|
@ -141,9 +141,10 @@ class Config
|
|||
/**
|
||||
* Throw an exception if some of the options are invalid.
|
||||
*
|
||||
* @return void
|
||||
* @throws Exception If youtube-dl is missing
|
||||
* @throws Exception If Python is missing
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
private function validateOptions()
|
||||
{
|
||||
|
@ -224,7 +225,7 @@ class Config
|
|||
* Manually set some options.
|
||||
*
|
||||
* @param array $options Options (see `config/config.example.yml` for available options)
|
||||
* @param boolean $update True to update an existing instance
|
||||
* @param bool $update True to update an existing instance
|
||||
*/
|
||||
public static function setOptions(array $options, $update = true)
|
||||
{
|
||||
|
|
|
@ -8,8 +8,6 @@ namespace Alltube;
|
|||
use Barracuda\ArchiveStream\TarArchive;
|
||||
use GuzzleHttp\Psr7\Stream;
|
||||
use Psr\Http\Message\StreamInterface;
|
||||
use RuntimeException;
|
||||
use stdClass;
|
||||
|
||||
/**
|
||||
* Class used to create a Tar archive from playlists and stream it to the browser.
|
||||
|
@ -41,6 +39,7 @@ class PlaylistArchiveStream extends TarArchive implements StreamInterface
|
|||
|
||||
/**
|
||||
* True if the archive is complete.
|
||||
*
|
||||
* @var bool
|
||||
*/
|
||||
private $isComplete = false;
|
||||
|
|
|
@ -26,19 +26,22 @@ class Video
|
|||
private $config;
|
||||
|
||||
/**
|
||||
* URL of the page containing the video
|
||||
* URL of the page containing the video.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
private $webpageUrl;
|
||||
|
||||
/**
|
||||
* Requested video format
|
||||
* Requested video format.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
private $requestedFormat;
|
||||
|
||||
/**
|
||||
* Password
|
||||
* Password.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
private $password;
|
||||
|
@ -68,6 +71,7 @@ class Video
|
|||
private function getProcess(array $arguments)
|
||||
{
|
||||
$config = Config::getInstance();
|
||||
|
||||
return new Process(
|
||||
array_merge(
|
||||
[$config->python, $config->youtubedl],
|
||||
|
@ -172,7 +176,7 @@ class Video
|
|||
*
|
||||
* @param string $name Property
|
||||
*
|
||||
* @return boolean
|
||||
* @return bool
|
||||
*/
|
||||
public function __isset($name)
|
||||
{
|
||||
|
@ -526,7 +530,7 @@ class Video
|
|||
*/
|
||||
public function withFormat($format)
|
||||
{
|
||||
return new Video($this->webpageUrl, $format, $this->password);
|
||||
return new self($this->webpageUrl, $format, $this->password);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -6,18 +6,13 @@
|
|||
namespace Alltube\Test;
|
||||
|
||||
use Alltube\Config;
|
||||
use Alltube\Video;
|
||||
use Alltube\PlaylistArchiveStream;
|
||||
use PHPUnit\Framework\TestCase;
|
||||
use RuntimeException;
|
||||
use stdClass;
|
||||
|
||||
/**
|
||||
* Unit tests for the ViewFactory class.
|
||||
*/
|
||||
abstract class BaseTest extends TestCase
|
||||
{
|
||||
|
||||
/**
|
||||
* Prepare tests.
|
||||
*/
|
||||
|
|
|
@ -6,7 +6,6 @@
|
|||
namespace Alltube\Test;
|
||||
|
||||
use Alltube\Config;
|
||||
use PHPUnit\Framework\TestCase;
|
||||
|
||||
/**
|
||||
* Unit tests for the Config class.
|
||||
|
@ -132,7 +131,6 @@ class ConfigTest extends BaseTest
|
|||
Config::setOptions(['python' => 'foo']);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Test the getInstance function with the CONVERT and PYTHON environment variables.
|
||||
*
|
||||
|
|
|
@ -10,7 +10,6 @@ use Alltube\Controller\FrontController;
|
|||
use Alltube\LocaleManager;
|
||||
use Alltube\ViewFactory;
|
||||
use Exception;
|
||||
use PHPUnit\Framework\TestCase;
|
||||
use Slim\Container;
|
||||
use Slim\Http\Environment;
|
||||
use Slim\Http\Request;
|
||||
|
|
|
@ -7,7 +7,6 @@ namespace Alltube\Test;
|
|||
|
||||
use Alltube\Locale;
|
||||
use Alltube\LocaleManager;
|
||||
use PHPUnit\Framework\TestCase;
|
||||
|
||||
/**
|
||||
* Unit tests for the LocaleManagerTest class.
|
||||
|
|
|
@ -8,7 +8,6 @@ namespace Alltube\Test;
|
|||
use Alltube\Locale;
|
||||
use Alltube\LocaleManager;
|
||||
use Alltube\LocaleMiddleware;
|
||||
use PHPUnit\Framework\TestCase;
|
||||
use Slim\Container;
|
||||
use Slim\Http\Environment;
|
||||
use Slim\Http\Request;
|
||||
|
|
|
@ -6,7 +6,6 @@
|
|||
namespace Alltube\Test;
|
||||
|
||||
use Alltube\Locale;
|
||||
use PHPUnit\Framework\TestCase;
|
||||
|
||||
/**
|
||||
* Unit tests for the LocaleTest class.
|
||||
|
|
|
@ -5,12 +5,8 @@
|
|||
|
||||
namespace Alltube\Test;
|
||||
|
||||
use Alltube\Config;
|
||||
use Alltube\Video;
|
||||
use Alltube\PlaylistArchiveStream;
|
||||
use PHPUnit\Framework\TestCase;
|
||||
use RuntimeException;
|
||||
use stdClass;
|
||||
use Alltube\Video;
|
||||
|
||||
/**
|
||||
* Unit tests for the ViewFactory class.
|
||||
|
|
|
@ -6,7 +6,6 @@
|
|||
namespace Alltube\Test;
|
||||
|
||||
use Alltube\UglyRouter;
|
||||
use PHPUnit\Framework\TestCase;
|
||||
use Slim\Http\Environment;
|
||||
use Slim\Http\Request;
|
||||
|
||||
|
|
|
@ -5,11 +5,9 @@
|
|||
|
||||
namespace Alltube\Test;
|
||||
|
||||
use Alltube\Config;
|
||||
use Alltube\Video;
|
||||
use Mockery;
|
||||
use phpmock\mockery\PHPMockery;
|
||||
use PHPUnit\Framework\TestCase;
|
||||
|
||||
/**
|
||||
* Unit tests for the Video class.
|
||||
|
|
|
@ -7,14 +7,12 @@ namespace Alltube\Test;
|
|||
|
||||
use Alltube\Config;
|
||||
use Alltube\Video;
|
||||
use PHPUnit\Framework\TestCase;
|
||||
|
||||
/**
|
||||
* Unit tests for the Video class.
|
||||
*/
|
||||
class VideoTest extends BaseTest
|
||||
{
|
||||
|
||||
/**
|
||||
* Test getExtractors function.
|
||||
*
|
||||
|
|
|
@ -6,7 +6,6 @@
|
|||
namespace Alltube\Test;
|
||||
|
||||
use Alltube\ViewFactory;
|
||||
use PHPUnit\Framework\TestCase;
|
||||
use Slim\Container;
|
||||
use Slim\Http\Environment;
|
||||
use Slim\Http\Request;
|
||||
|
|
Loading…
Reference in a new issue