2 if (!defined('STDOUT')) {
3 // php://stdout does not obey output buffering. Any output would break
4 // unserialization of child process results in the parent process.
5 define('STDOUT', fopen('php://temp', 'w+b'));
6 define('STDERR', fopen('php://stderr', 'wb'));
10 ini_set('display_errors', 'stderr');
11 set_include_path('{include_path}');
13 $composerAutoload = {composerAutoload};
18 if ($composerAutoload) {
19 require_once $composerAutoload;
20 define('PHPUNIT_COMPOSER_INSTALL', $composerAutoload);
25 function __phpunit_run_isolated_test()
27 if (!class_exists('{className}')) {
28 require_once '{filename}';
31 $result = new PHPUnit_Framework_TestResult;
33 if ({collectCodeCoverageInformation}) {
34 $result->setCodeCoverage(
37 unserialize('{codeCoverageFilter}')
42 $result->beStrictAboutTestsThatDoNotTestAnything({isStrictAboutTestsThatDoNotTestAnything});
43 $result->beStrictAboutOutputDuringTests({isStrictAboutOutputDuringTests});
44 $result->beStrictAboutTestSize({isStrictAboutTestSize});
45 $result->beStrictAboutTodoAnnotatedTests({isStrictAboutTodoAnnotatedTests});
47 $test = new {className}('{methodName}', unserialize('{data}'), '{dataName}');
48 $test->setDependencyInput(unserialize('{dependencyInput}'));
49 $test->setInIsolation(TRUE);
54 if (!$test->hasExpectationOnOutput()) {
55 $output = $test->getActualOutput();
58 @rewind(STDOUT); /* @ as not every STDOUT target stream is rewindable */
59 if ($stdout = stream_get_contents(STDOUT)) {
60 $output = $stdout . $output;
65 'testResult' => $test->getResult(),
66 'numAssertions' => $test->getNumAssertions(),
73 $configurationFilePath = '{configurationFilePath}';
75 if ('' !== $configurationFilePath) {
76 $configuration = PHPUnit_Util_Configuration::getInstance($configurationFilePath);
77 $configuration->handlePHPConfiguration();
78 unset($configuration);
81 function __phpunit_error_handler($errno, $errstr, $errfile, $errline, $errcontext)
86 set_error_handler("__phpunit_error_handler");
92 restore_error_handler();
94 if (isset($GLOBALS['__PHPUNIT_BOOTSTRAP'])) {
95 require_once $GLOBALS['__PHPUNIT_BOOTSTRAP'];
96 unset($GLOBALS['__PHPUNIT_BOOTSTRAP']);
99 __phpunit_run_isolated_test();