69 lines
		
	
	
	
		
			2.5 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			69 lines
		
	
	
	
		
			2.5 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('FFMpeg\Exception\ExecutableNotFoundException', 'Unable to load FFMpeg');
 | |
|         $app['ffmpeg'];
 | |
|     }
 | |
| 
 | |
|     public function testWithFFMprobeBinaryConfig()
 | |
|     {
 | |
|         $app = new Application();
 | |
|         $app->register(new FFMpegServiceProvider(), array(
 | |
|             'ffmpeg.configuration' => array(
 | |
|                 'ffprobe.binaries' => '/path/to/ffprobe',
 | |
|             )
 | |
|         ));
 | |
| 
 | |
|         $this->setExpectedException('FFMpeg\Exception\ExecutableNotFoundException', 'Unable to load FFProbe');
 | |
|         $app['ffmpeg.ffprobe'];
 | |
|     }
 | |
| }
 |