scratch – Blame information for rev 115

Subversion Repositories:
Rev:
Rev Author Line No. Line
115 office 1 <?php
2  
3 namespace Tests\FFMpeg\Unit\Filters\Video;
4  
5 use Tests\FFMpeg\Unit\TestCase;
6 use FFMpeg\Filters\Video\VideoFilters;
7 use FFMpeg\Filters\Video\ResizeFilter;
8  
9 class VideoFiltersTest extends TestCase
10 {
11 /**
12 * @dataProvider provideResizeOptions
13 */
14 public function testResize($mode, $forceStandards)
15 {
16 $capturedFilter = null;
17  
18 $video = $this->getVideoMock();
19 $filters = new VideoFilters($video);
20 $dimension = $this->getDimensionMock();
21  
22 $video->expects($this->once())
23 ->method('addFilter')
24 ->with($this->isInstanceOf('FFMpeg\Filters\Video\ResizeFilter'))
25 ->will($this->returnCallback(function ($filter) use (&$capturedFilter) {
26 $capturedFilter = $filter;
27 }));
28  
29 $filters->resize($dimension, $mode, $forceStandards);
30  
31 $this->assertSame($mode, $capturedFilter->getMode());
32 $this->assertSame($forceStandards, $capturedFilter->areStandardsForced());
33 $this->assertSame($dimension, $capturedFilter->getDimension());
34 }
35  
36 public function provideResizeOptions()
37 {
38 return array(
39 array(ResizeFilter::RESIZEMODE_FIT, true),
40 array(ResizeFilter::RESIZEMODE_SCALE_WIDTH, true),
41 array(ResizeFilter::RESIZEMODE_SCALE_HEIGHT, false),
42 array(ResizeFilter::RESIZEMODE_INSET, false),
43 );
44 }
45  
46 public function testResample()
47 {
48 $capturedFilter = null;
49  
50 $video = $this->getVideoMock();
51 $filters = new VideoFilters($video);
52 $framerate = $this->getFramerateMock();
53 $gop = 42;
54  
55 $video->expects($this->once())
56 ->method('addFilter')
57 ->with($this->isInstanceOf('FFMpeg\Filters\Video\FrameRateFilter'))
58 ->will($this->returnCallback(function ($filter) use (&$capturedFilter) {
59 $capturedFilter = $filter;
60 }));
61  
62 $filters->framerate($framerate, $gop);
63  
64 $this->assertSame($framerate, $capturedFilter->getFramerate());
65 $this->assertSame($gop, $capturedFilter->getGOP());
66 }
67  
68 public function testSynchronize()
69 {
70 $video = $this->getVideoMock();
71 $filters = new VideoFilters($video);
72  
73 $video->expects($this->once())
74 ->method('addFilter')
75 ->with($this->isInstanceOf('FFMpeg\Filters\Video\SynchronizeFilter'));
76  
77 $filters->synchronize();
78 }
79 }