Мы устанавливаем глобал в нашем файле prepend, который используется для формирования пути для наших вызовов require_once. Например:
require_once($GLOBALS['root'].'/library/particleboard/JsonUtil.php');
Проблема в том, что при запуске сборщика тестов PHPUnit файл prepend не запускается, поэтому глобальное значение никогда не устанавливается. Когда я бегу
cd /company/trunk/queue/process; phpunit --skeleton-test QueueProcessView
PHPUnit пытается разрешить require_once в QueueProcessView, но, поскольку $ GLOBALS ['root'] никогда не устанавливается, я получаю фатальную ошибку при включении требуемого файла.
Например, для PHPUnit, что должно быть
require_once(/code/trunk/library/particleboard/JsonUtil.php)
разрешается как
require_once(/library/particleboard/JsonUtil.php)
Обратите внимание на отсутствующий корень.
Кто-нибудь знает, есть ли в коде скелетного теста способ вызова файла PHP до его запуска? В этом я мог бы установить свой GLOBAL ['root'] в этом файле.
Буду признателен за любые другие творческие решения.