1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70
|
<?php
/*
* This file is part of composer/xdebug-handler.
*
* (c) Composer <https://github.com/composer>
*
* For the full copyright and license information, please view
* the LICENSE file that was distributed with this source code.
*/
namespace Composer\XdebugHandler;
use Composer\XdebugHandler\Helpers\Logger;
use PHPUnit\Framework\TestCase;
/**
* This class does not need to extend Helpers\BaseTestCase
*/
class ClassTest extends TestCase
{
public function testConstructorThrowsOnEmptyEnvPrefix()
{
$this->setException('RuntimeException');
new XdebugHandler('');
}
public function testConstructorThrowsOnInvalidEnvPrefix()
{
$this->setException('RuntimeException');
new XdebugHandler(array('name'));
}
public function testConstructorThrowsOnInvalidColorOption()
{
$this->setException('RuntimeException');
new XdebugHandler('test', false);
}
/**
* @dataProvider setterProvider
*/
public function testSettersAreFluent($setter, $value)
{
$xdebug = new XdebugHandler('myapp');
$params = null !== $value ? array($value) : array();
$result = call_user_func_array(array($xdebug, $setter), $params);
$this->assertInstanceOf(get_class($xdebug), $result);
}
public function setterProvider()
{
// $setter, $value
return array(
'setLogger' => array('setLogger', new Logger()),
'setMainScript' => array('setMainScript', '--'),
'setPersistent' => array('setPersistent', null),
);
}
private function setException($exception)
{
if (!method_exists($this, 'expectException')) {
$this->setExpectedException($exception);
} else {
$this->expectException($exception);
}
}
}
|