Add Format tests
This commit is contained in:
parent
eec7e3f2dd
commit
7491db22e2
2 changed files with 320 additions and 1 deletions
314
tests/src/FFMpeg/Format/DefaultFormatTest.php
Normal file
314
tests/src/FFMpeg/Format/DefaultFormatTest.php
Normal file
|
|
@ -0,0 +1,314 @@
|
|||
<?php
|
||||
|
||||
namespace FFMpeg\Format;
|
||||
|
||||
require_once dirname(__FILE__) . '/../../../../src/FFMpeg/Format/DefaultFormat.php';
|
||||
|
||||
/**
|
||||
* Test class for DefaultFormat.
|
||||
* Generated by PHPUnit on 2012-04-13 at 11:03:02.
|
||||
*/
|
||||
class DefaultFormatTest extends \PHPUnit_Framework_TestCase
|
||||
{
|
||||
|
||||
/**
|
||||
* @var DefaultFormat
|
||||
*/
|
||||
protected $object;
|
||||
|
||||
protected function setUp()
|
||||
{
|
||||
$this->object = new DefaultFormatTester(320, 240);
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FFMpeg\Format\DefaultFormat::__construct
|
||||
* @covers FFMpeg\Format\DefaultFormat::getWidth
|
||||
* @covers FFMpeg\Format\DefaultFormat::getHeight
|
||||
*/
|
||||
public function testConstruct()
|
||||
{
|
||||
$this->assertEquals(320, $this->object->getWidth());
|
||||
$this->assertEquals(240, $this->object->getHeight());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FFMpeg\Format\DefaultFormat::getExtraParams
|
||||
*/
|
||||
public function testGetExtraParams()
|
||||
{
|
||||
$this->assertEquals('-f format', $this->object->getExtraParams());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FFMpeg\Format\DefaultFormat::setDimensions
|
||||
*/
|
||||
public function testSetDimensions()
|
||||
{
|
||||
$this->object->setDimensions(240, 640);
|
||||
$this->assertEquals(240, $this->object->getWidth());
|
||||
$this->assertEquals(640, $this->object->getHeight());
|
||||
|
||||
$this->object->setDimensions(242, 638);
|
||||
$this->assertEquals(240, $this->object->getWidth());
|
||||
$this->assertEquals(640, $this->object->getHeight());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FFMpeg\Format\DefaultFormat::setDimensions
|
||||
* @dataProvider getWrongDimensions
|
||||
* @expectedException \InvalidArgumentException
|
||||
*/
|
||||
public function testWrongDimensions($width, $height)
|
||||
{
|
||||
$this->object->setDimensions($width, $height);
|
||||
}
|
||||
|
||||
/**
|
||||
* Data provider for testWrongDimensions
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function getWrongDimensions()
|
||||
{
|
||||
return array(
|
||||
array(0, 240),
|
||||
array(240, 0),
|
||||
array(-5, 240),
|
||||
array(240, -5),
|
||||
array(-5, -5),
|
||||
array(0, 0)
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FFMpeg\Format\DefaultFormat::getFrameRate
|
||||
*/
|
||||
public function testGetFrameRate()
|
||||
{
|
||||
$this->assertEquals(25, $this->object->getFrameRate());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FFMpeg\Format\DefaultFormat::setFrameRate
|
||||
*/
|
||||
public function testSetFrameRate()
|
||||
{
|
||||
$this->object->setFrameRate(12);
|
||||
$this->assertEquals(12, $this->object->getFrameRate());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FFMpeg\Format\DefaultFormat::setFrameRate
|
||||
* @dataProvider getWrongFrameRates
|
||||
* @expectedException \InvalidArgumentException
|
||||
*/
|
||||
public function testSetWrongFrameRates($framerate)
|
||||
{
|
||||
$this->object->setFrameRate($framerate);
|
||||
}
|
||||
|
||||
/**
|
||||
* Data provider for testWrongFrameRates
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function getWrongFramerates()
|
||||
{
|
||||
return array(array(-5), array(0));
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FFMpeg\Format\DefaultFormat::getAudioCodec
|
||||
*/
|
||||
public function testGetAudioCodec()
|
||||
{
|
||||
$this->assertEquals('audiocodec1', $this->object->getAudioCodec());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FFMpeg\Format\DefaultFormat::setAudioCodec
|
||||
*/
|
||||
public function testSetAudioCodec()
|
||||
{
|
||||
$this->object->setAudioCodec('audiocodec2');
|
||||
$this->assertEquals('audiocodec2', $this->object->getAudioCodec());
|
||||
$this->object->setAudioCodec('audiocodec1');
|
||||
$this->assertEquals('audiocodec1', $this->object->getAudioCodec());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FFMpeg\Format\DefaultFormat::setAudioCodec
|
||||
* @expectedException \InvalidArgumentException
|
||||
*/
|
||||
public function testSetWrongAudioCodec()
|
||||
{
|
||||
$this->object->setAudioCodec('audiocodec4');
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FFMpeg\Format\DefaultFormat::getAudioSampleRate
|
||||
*/
|
||||
public function testGetAudioSampleRate()
|
||||
{
|
||||
$this->assertEquals(44100, $this->object->getAudioSampleRate());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FFMpeg\Format\DefaultFormat::setAudioSampleRate
|
||||
*/
|
||||
public function testSetAudioSampleRate()
|
||||
{
|
||||
$this->object->setAudioSampleRate(22050);
|
||||
$this->assertEquals(22050, $this->object->getAudioSampleRate());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FFMpeg\Format\DefaultFormat::setAudioSampleRate
|
||||
* @expectedException \InvalidArgumentException
|
||||
* @dataProvider getWrongAudioSampleRate
|
||||
*/
|
||||
public function testSetWrongAudioSampleRate($samplerate)
|
||||
{
|
||||
$this->object->setAudioSampleRate($samplerate);
|
||||
}
|
||||
|
||||
public function getWrongAudioSampleRate()
|
||||
{
|
||||
return array(array(-5), array(0));
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FFMpeg\Format\DefaultFormat::getVideoCodec
|
||||
*/
|
||||
public function testGetVideoCodec()
|
||||
{
|
||||
$this->assertEquals('videocodec2', $this->object->getVideoCodec());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FFMpeg\Format\DefaultFormat::setVideoCodec
|
||||
*/
|
||||
public function testSetVideoCodec()
|
||||
{
|
||||
$this->object->setVideoCodec('videocodec2');
|
||||
$this->assertEquals('videocodec2', $this->object->getVideoCodec());
|
||||
$this->object->setVideoCodec('videocodec1');
|
||||
$this->assertEquals('videocodec1', $this->object->getVideoCodec());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FFMpeg\Format\DefaultFormat::setVideoCodec
|
||||
* @expectedException \InvalidArgumentException
|
||||
*/
|
||||
public function testSetWrongVideoCodec()
|
||||
{
|
||||
$this->object->setVideoCodec('videocodec4');
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FFMpeg\Format\DefaultFormat::getKiloBitrate
|
||||
*/
|
||||
public function testGetKiloBitrate()
|
||||
{
|
||||
$this->assertEquals(1000, $this->object->getKiloBitrate());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FFMpeg\Format\DefaultFormat::setKiloBitrate
|
||||
*/
|
||||
public function testSetKiloBitrate()
|
||||
{
|
||||
$this->object->setKiloBitrate(500);
|
||||
$this->assertEquals(500, $this->object->getKiloBitrate());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FFMpeg\Format\DefaultFormat::setKiloBitrate
|
||||
* @dataProvider getWrongKiloBitrate
|
||||
* @expectedException \InvalidArgumentException
|
||||
*/
|
||||
public function testSetWrongKiloBitrate($kbrate)
|
||||
{
|
||||
$this->object->setKiloBitrate($kbrate);
|
||||
}
|
||||
|
||||
public function getWrongKiloBitrate()
|
||||
{
|
||||
return array(array(-5), array(0));
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FFMpeg\Format\DefaultFormat::getGOPsize
|
||||
*/
|
||||
public function testGetGOPsize()
|
||||
{
|
||||
$this->assertEquals(25, $this->object->getGOPsize());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FFMpeg\Format\DefaultFormat::setGOPsize
|
||||
*/
|
||||
public function testSetGOPsize()
|
||||
{
|
||||
$this->object->setGOPsize(100);
|
||||
$this->assertEquals(100, $this->object->getGOPsize());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FFMpeg\Format\DefaultFormat::setGOPsize
|
||||
* @dataProvider getWrongGOPsize
|
||||
* @expectedException \InvalidArgumentException
|
||||
*/
|
||||
public function testSetWrongGOPSize($GOP)
|
||||
{
|
||||
$this->object->setGOPsize($GOP);
|
||||
}
|
||||
|
||||
public function getWrongGOPsize()
|
||||
{
|
||||
return array(array(-5), array(0));
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers FFMpeg\Format\DefaultFormat::getMultiple
|
||||
*/
|
||||
public function testGetMultiple()
|
||||
{
|
||||
$this->assertEquals(320, $this->object->getMultiple(321, 16));
|
||||
$this->assertEquals(320, $this->object->getMultiple(319, 16));
|
||||
$this->assertEquals(320, $this->object->getMultiple(313, 16));
|
||||
$this->assertEquals(304, $this->object->getMultiple(312, 16));
|
||||
$this->assertEquals(336, $this->object->getMultiple(329, 16));
|
||||
$this->assertEquals(16, $this->object->getMultiple(8, 16));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
class DefaultFormatTester extends DefaultFormat
|
||||
{
|
||||
|
||||
protected $audioCodec = 'audiocodec1';
|
||||
protected $videoCodec = 'videocodec2';
|
||||
|
||||
protected function getAvailableAudioCodecs()
|
||||
{
|
||||
return array('audiocodec1', 'audiocodec2', 'audiocodec3');
|
||||
}
|
||||
|
||||
protected function getAvailableVideoCodecs()
|
||||
{
|
||||
return array('videocodec1', 'videocodec2');
|
||||
}
|
||||
|
||||
public function getExtraParams()
|
||||
{
|
||||
return '-f format';
|
||||
}
|
||||
|
||||
public function getMultiple($value, $multiple)
|
||||
{
|
||||
return parent::getMultiple($value, $multiple);
|
||||
}
|
||||
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue