|
|
|
@ -22,6 +22,7 @@ use Symfony\Component\Process\ExecutableFinder;
|
|
|
|
|
abstract class TestCase extends \PHPUnit_Framework_TestCase
|
|
|
|
|
{
|
|
|
|
|
private static $parser;
|
|
|
|
|
private static $executableCache = array();
|
|
|
|
|
|
|
|
|
|
public static function getUniqueTmpDirectory()
|
|
|
|
|
{
|
|
|
|
@ -94,9 +95,13 @@ abstract class TestCase extends \PHPUnit_Framework_TestCase
|
|
|
|
|
*/
|
|
|
|
|
protected function skipIfNotExecutable($executableName)
|
|
|
|
|
{
|
|
|
|
|
$finder = new ExecutableFinder();
|
|
|
|
|
if (!isset(self::$executableCache[$executableName])) {
|
|
|
|
|
$finder = new ExecutableFinder();
|
|
|
|
|
self::$executableCache[$executableName] = (bool) $finder->find($executableName);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (!$finder->find($executableName))
|
|
|
|
|
if (false === self::$executableCache[$executableName]) {
|
|
|
|
|
$this->markTestSkipped($executableName . ' is not found or not executable.');
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|