/** @return Tester\Runner\PhpInterpreter */
function createInterpreter()
{
    if (defined('HHVM_VERSION')) {
        return new Tester\Runner\HhvmPhpInterpreter(PHP_BINARY);
    } elseif (defined('PHPDBG_VERSION')) {
        return new Tester\Runner\ZendPhpDbgInterpreter(PHP_BINARY, ' -c ' . Tester\Helpers::escapeArg(php_ini_loaded_file()));
    } else {
        return new Tester\Runner\ZendPhpInterpreter(PHP_BINARY, ' -c ' . Tester\Helpers::escapeArg(php_ini_loaded_file()));
    }
}
Exemple #2
0
    Tester\Environment::$useColors = (bool) $options['--colors'];
} elseif ($options['--tap']) {
    Tester\Environment::$useColors = FALSE;
}
if ($cmd->isEmpty() || $options['--help']) {
    $cmd->help();
    exit;
}
$phpArgs = '';
if ($options['-c']) {
    $phpArgs .= ' -c ' . Tester\Helpers::escapeArg($options['-c']);
} elseif (!$options['--info']) {
    echo "Note: No php.ini is used.\n";
}
foreach ($options['-d'] as $item) {
    $phpArgs .= ' -d ' . Tester\Helpers::escapeArg($item);
}
$php = new Tester\Runner\PhpExecutable($options['-p'], $phpArgs);
if ($options['--info']) {
    $job = new Tester\Runner\Job(__DIR__ . '/Runner/info.php', $php);
    $job->run();
    echo $job->getOutput();
    exit;
}
if ($options['--coverage']) {
    if (!$php->hasXdebug()) {
        throw new Exception("Code coverage functionality requires Xdebug extension (used {$php->getCommandLine()})");
    }
    file_put_contents($options['--coverage'], '');
    $coverageFile = realpath($options['--coverage']);
    putenv(Tester\Environment::COVERAGE . '=' . $coverageFile);
Exemple #3
0
/** @return Tester\Runner\PhpInterpreter */
function createInterpreter()
{
    return defined('HHVM_VERSION') ? new Tester\Runner\HhvmPhpInterpreter(PHP_BINARY) : new Tester\Runner\ZendPhpInterpreter(PHP_BINARY, ' -c ' . Tester\Helpers::escapeArg(php_ini_loaded_file()));
}