ffmpeg-mappable-media/tests/FFMpeg/Unit/Driver/FFProbeDriverTest.php

50 lines
1.4 KiB
PHP
Raw Normal View History

2013-06-25 10:03:20 +02:00
<?php
namespace Tests\FFMpeg\Unit\Driver;
2013-06-25 10:03:20 +02:00
use Alchemy\BinaryDriver\Configuration;
use FFMpeg\Driver\FFProbeDriver;
use Symfony\Component\Process\ExecutableFinder;
use Tests\FFMpeg\Unit\TestCase;
2013-06-25 10:03:20 +02:00
class FFProbeDriverTest extends TestCase
{
public function setUp(): void
2013-06-25 10:03:20 +02:00
{
$executableFinder = new ExecutableFinder();
$found = false;
foreach (['avprobe', 'ffprobe'] as $name) {
2013-06-25 10:03:20 +02:00
if (null !== $executableFinder->find($name)) {
$found = true;
break;
}
}
if (!$found) {
$this->markTestSkipped('Neither ffprobe or avprobe found');
}
}
public function testCreate()
{
$logger = $this->getLoggerMock();
$ffprobe = FFProbeDriver::create([], $logger);
2013-06-25 10:03:20 +02:00
$this->assertInstanceOf('FFMpeg\Driver\FFProbeDriver', $ffprobe);
$this->assertEquals($logger, $ffprobe->getProcessRunner()->getLogger());
}
public function testCreateWithConfig()
{
$conf = new Configuration();
$ffprobe = FFProbeDriver::create($conf, $this->getLoggerMock());
$this->assertEquals($conf, $ffprobe->getConfiguration());
}
2013-07-03 14:13:29 +02:00
public function testCreateFailureThrowsAnException()
{
$this->expectException('\FFMpeg\Exception\ExecutableNotFoundException');
FFProbeDriver::create(['ffprobe.binaries' => '/path/to/nowhere']);
2013-07-03 14:13:29 +02:00
}
2013-06-25 10:03:20 +02:00
}