70 lines
2.6 KiB
PHP
70 lines
2.6 KiB
PHP
|
|
<?php
|
||
|
|
|
||
|
|
namespace FFMpeg\Tests;
|
||
|
|
|
||
|
|
use FFMpeg\FFMpegServiceProvider;
|
||
|
|
use Silex\Application;
|
||
|
|
|
||
|
|
class FFMpegServiceProviderTest extends \PHPUnit_Framework_TestCase
|
||
|
|
{
|
||
|
|
public function testWithConfig()
|
||
|
|
{
|
||
|
|
$app = new Application();
|
||
|
|
$app->register(new FFMpegServiceProvider(), array(
|
||
|
|
'ffmpeg.configuration' => array(
|
||
|
|
'ffmpeg.threads' => 12,
|
||
|
|
'ffmpeg.timeout' => 10666,
|
||
|
|
'ffprobe.timeout' => 4242,
|
||
|
|
)
|
||
|
|
));
|
||
|
|
|
||
|
|
$this->assertInstanceOf('FFMpeg\FFMpeg', $app['ffmpeg']);
|
||
|
|
$this->assertSame($app['ffmpeg'], $app['ffmpeg.ffmpeg']);
|
||
|
|
$this->assertInstanceOf('FFMpeg\FFProbe', $app['ffmpeg.ffprobe']);
|
||
|
|
|
||
|
|
$this->assertEquals(12, $app['ffmpeg']->getFFMpegDriver()->getConfiguration()->get('ffmpeg.threads'));
|
||
|
|
$this->assertEquals(10666, $app['ffmpeg']->getFFMpegDriver()->getProcessBuilderFactory()->getTimeout());
|
||
|
|
$this->assertEquals(4242, $app['ffmpeg.ffprobe']->getFFProbeDriver()->getProcessBuilderFactory()->getTimeout());
|
||
|
|
}
|
||
|
|
|
||
|
|
public function testWithoutConfig()
|
||
|
|
{
|
||
|
|
$app = new Application();
|
||
|
|
$app->register(new FFMpegServiceProvider());
|
||
|
|
|
||
|
|
$this->assertInstanceOf('FFMpeg\FFMpeg', $app['ffmpeg']);
|
||
|
|
$this->assertSame($app['ffmpeg'], $app['ffmpeg.ffmpeg']);
|
||
|
|
$this->assertInstanceOf('FFMpeg\FFProbe', $app['ffmpeg.ffprobe']);
|
||
|
|
|
||
|
|
$this->assertEquals(4, $app['ffmpeg']->getFFMpegDriver()->getConfiguration()->get('ffmpeg.threads'));
|
||
|
|
$this->assertEquals(300, $app['ffmpeg']->getFFMpegDriver()->getProcessBuilderFactory()->getTimeout());
|
||
|
|
$this->assertEquals(30, $app['ffmpeg.ffprobe']->getFFProbeDriver()->getProcessBuilderFactory()->getTimeout());
|
||
|
|
}
|
||
|
|
|
||
|
|
public function testWithFFMpegBinaryConfig()
|
||
|
|
{
|
||
|
|
$app = new Application();
|
||
|
|
$app->register(new FFMpegServiceProvider(), array(
|
||
|
|
'ffmpeg.configuration' => array(
|
||
|
|
'ffmpeg.binaries' => '/path/to/ffmpeg',
|
||
|
|
)
|
||
|
|
));
|
||
|
|
|
||
|
|
$this->setExpectedException('Alchemy\BinaryDriver\Exception\ExecutableNotFoundException', 'Executable not found, proposed : /path/to/ffmpeg');
|
||
|
|
$app['ffmpeg'];
|
||
|
|
}
|
||
|
|
|
||
|
|
public function testWithFFMprobeBinaryConfig()
|
||
|
|
{
|
||
|
|
$app = new Application();
|
||
|
|
$app->register(new FFMpegServiceProvider(), array(
|
||
|
|
'ffmpeg.configuration' => array(
|
||
|
|
'ffprobe.binaries' => '/path/to/ffprobe',
|
||
|
|
)
|
||
|
|
));
|
||
|
|
|
||
|
|
$this->setExpectedException('Alchemy\BinaryDriver\Exception\ExecutableNotFoundException', 'Executable not found, proposed : /path/to/ffprobe');
|
||
|
|
$app['ffmpeg.ffprobe'];
|
||
|
|
}
|
||
|
|
}
|