diff -up ./phpunit.rpm ./phpunit --- ./phpunit.rpm 2021-08-02 09:09:31.000000000 +0200 +++ ./phpunit 2021-08-02 09:09:33.927568458 +0200 @@ -58,25 +58,12 @@ if (!ini_get('date.timezone')) { ini_set('date.timezone', 'UTC'); } -foreach (array(__DIR__ . '/../../autoload.php', __DIR__ . '/../vendor/autoload.php', __DIR__ . '/vendor/autoload.php') as $file) { - if (file_exists($file)) { - define('PHPUNIT_COMPOSER_INSTALL', $file); - - break; - } -} - -unset($file); - -if (!defined('PHPUNIT_COMPOSER_INSTALL')) { - fwrite( - STDERR, - 'You need to set up the project dependencies using Composer:' . PHP_EOL . PHP_EOL . - ' composer install' . PHP_EOL . PHP_EOL . - 'You can learn all about Composer on https://getcomposer.org/.' . PHP_EOL - ); - - die(1); +// Libraries PATH +if (file_exists('./vendor/phpunit/phpunit/phpunit') && file_exists('./vendor/autoload.php')) { + echo "\n==== Redirecting to composer installed version in vendor/phpunit ====\n\n"; + define ('PHPUNIT_COMPOSER_INSTALL', realpath('./vendor/autoload.php')); +} else { + define ('PHPUNIT_COMPOSER_INSTALL', '/usr/share/php/PHPUnit9/autoload.php'); } $options = getopt('', array('prepend:')); @@ -89,4 +76,8 @@ unset($options); require PHPUNIT_COMPOSER_INSTALL; -PHPUnit\TextUI\Command::main(); +if (class_exists('PHPUnit_TextUI_Command')) { + PHPUnit_TextUI_Command::main(); // PHPUnit v5 or older +} else { + PHPUnit\TextUI\Command::main(); // PHPUnit v6 or newer +} diff -up ./src/Util/Xml/SchemaFinder.php.rpm ./src/Util/Xml/SchemaFinder.php --- ./src/Util/Xml/SchemaFinder.php.rpm 2021-08-02 09:09:31.000000000 +0200 +++ ./src/Util/Xml/SchemaFinder.php 2021-08-02 09:09:33.927568458 +0200 @@ -48,6 +48,6 @@ final class SchemaFinder return __PHPUNIT_PHAR_ROOT__ . '/'; } - return __DIR__ . '/../../../'; + return __DIR__ . '/../../'; } } diff -up ./tests/bootstrap.php.rpm ./tests/bootstrap.php --- ./tests/bootstrap.php.rpm 2021-08-02 09:09:33.928568455 +0200 +++ ./tests/bootstrap.php 2021-08-02 09:10:37.377383177 +0200 @@ -9,8 +9,8 @@ */ const TEST_FILES_PATH = __DIR__ . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR; -$composer = file_exists(__DIR__ . '/../vendor/autoload.php'); -$phar = file_exists(__DIR__ . '/autoload.php'); +$composer = true; +$phar = false; if ($composer && $phar) { print 'More than one test fixture autoloader is available, exiting.' . PHP_EOL; @@ -26,10 +26,14 @@ if (!$composer && !$phar) { if ($composer) { if (!defined('PHPUNIT_COMPOSER_INSTALL')) { - define('PHPUNIT_COMPOSER_INSTALL', dirname(__DIR__) . '/vendor/autoload.php'); + define('PHPUNIT_COMPOSER_INSTALL', '@PATH@/autoload.php'); } - require_once __DIR__ . '/../vendor/autoload.php'; + require_once PHPUNIT_COMPOSER_INSTALL; + require_once __DIR__ . '/_files/CoverageNamespacedFunctionTest.php'; + require_once __DIR__ . '/_files/CoveredFunction.php'; + require_once __DIR__ . '/_files/NamespaceCoveredFunction.php'; + require_once __DIR__ . '/autoload.php'; } if ($phar) {