Phpspe c global composer установка не работает - PullRequest
0 голосов
/ 25 февраля 2020

Я установил phpspe c через composer в кодовой базе root, выполнив composer require phpspec/phpspec. Я хотел запускать его без префикса каждый раз с vendor/bin, но я также не хотел добавлять его к PATH, поэтому сначала я установил его глобально с composer global require phpspec/phpspec (обе версии одинаковы) и добавил в путь с export PATH=$PATH:~/.composer/vendor/bin (я на MacOS Catalina).

Теперь я могу запустить phpspec из кодовой базы root, и она действительно запускается. Я могу запустить phpspec describe xxx, который создает файл и работает, однако выполнение phpspec run с треском проваливается:

✘ Fatal error happened while executing the following

    Uncaught TypeError: Argument 2 passed to Symfony\Component\EventDispatcher\EventDispatcher::dispatch() must be an instance of Symfony\Component\EventDispatcher\Event or null, string given, called in /Users/.../.composer/vendor/phpspec/phpspec/src/PhpSpec/Util/DispatchTrait.php on line 22 and defined in /Users/.../.composer/vendor/symfony/event-dispatcher/EventDispatcher.php:37
Stack trace:
#0 /Users/.../.composer/vendor/phpspec/phpspec/src/PhpSpec/Util/DispatchTrait.php(22): Symfony\Component\EventDispatcher\EventDispatcher->dispatch(Object(PhpSpec\Event\SuiteEvent), 'beforeSuite')
#1 /Users/.../.composer/vendor/phpspec/phpspec/src/PhpSpec/Runner/SuiteRunner.php(52): PhpSpec\Runner\SuiteRunner->dispatch(Object(Symfony\Component\EventDispatcher\EventDispatcher), Object(PhpSpec\Event\SuiteEvent), 'beforeSuite')
#2 /Users/.../.composer/vendor/phpspec/phpspec/src/PhpSpec/Console/Command/RunCommand.php(178): PhpSpec\Runner\SuiteRunner->run(Object(PhpSpec\Loader\Suite))
#3 /Users/.../.composer/ven in /Users/.../.composer/vendor/symfony/event-dispatcher/EventDispatcher.php on line 37

Однако выполнение vendor/bin/phpspec run проходит нормально.

В чем здесь может быть ошибка?

...