From c90f26724cceb5804f7d0ef8e07ea640a797248a Mon Sep 17 00:00:00 2001 From: Romain Biard Date: Wed, 11 Jan 2017 12:03:54 -0300 Subject: [PATCH] Creation of the tests for the ExtractMultipleFramesFilter class --- .../Video/ExtractMultipleFramesFilterTest.php | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 tests/Unit/Filters/Video/ExtractMultipleFramesFilterTest.php diff --git a/tests/Unit/Filters/Video/ExtractMultipleFramesFilterTest.php b/tests/Unit/Filters/Video/ExtractMultipleFramesFilterTest.php new file mode 100644 index 0000000..6619df7 --- /dev/null +++ b/tests/Unit/Filters/Video/ExtractMultipleFramesFilterTest.php @@ -0,0 +1,51 @@ +getVideoMock(); + $pathfile = '/path/to/file'.mt_rand(); + + $format = $this->getMock('FFMpeg\Format\VideoInterface'); + $format->expects($this->any()) + ->method('getModulus') + ->will($this->returnValue($modulus)); + + $streams = new StreamCollection(array( + new Stream(array( + 'codec_type' => 'video', + 'duration' => $duration, + )) + )); + + $video->expects($this->once()) + ->method('getStreams') + ->will($this->returnValue($streams)); + + $filter = new ExtractMultipleFramesFilter($frameRate, $destinationFolder); + $this->assertEquals($expected, $filter->apply($video, $format)); + } + + public function provideFrameRates() + { + return array( + array(ExtractMultipleFramesFilter::FRAMERATE_EVERY_SEC, '/', 100, 2, array('-vf', 'fps=1/1', '/frame-%03d.jpg')), + array(ExtractMultipleFramesFilter::FRAMERATE_EVERY_2SEC, '/', 100, 2, array('-vf', 'fps=1/2', '/frame-%02d.jpg')), + array(ExtractMultipleFramesFilter::FRAMERATE_EVERY_5SEC, '/', 100, 2, array('-vf', 'fps=1/5', '/frame-%02d.jpg')), + array(ExtractMultipleFramesFilter::FRAMERATE_EVERY_10SEC, '/', 100, 2, array('-vf', 'fps=1/10', '/frame-%02d.jpg')), + array(ExtractMultipleFramesFilter::FRAMERATE_EVERY_30SEC, '/', 100, 2, array('-vf', 'fps=1/30', '/frame-%02d.jpg')), + array(ExtractMultipleFramesFilter::FRAMERATE_EVERY_60SEC, '/', 100, 2, array('-vf', 'fps=1/60', '/frame-%02d.jpg')), + ); + } +}