Ошибка phpunit: класс «Пророчество \ Пророк» не найден - PullRequest
0 голосов
/ 19 февраля 2020

Я нахожусь в процессе написания некоторых тестов PHPUnit в Prophecy со следующим кодом:

public function testItBuildsAndPersistsEnclosure()
{
   $em = $this->prophesize(EntityManagerInterface::class);
}

, который дает мне следующий вывод:

PHPUnit 6.5.14 by Себастьян Бергман и авторы.

Тестовый проект Test Suite E.
2/2 (100%)

Время: 105 мс, Память: 6,00 МБ

Был 1 ошибка:

1) Tests \ AppBundle \ Service \ EnclosureBuilderServiceProphecyTest :: testItBuildsAndPersistsEnclosure Ошибка: класс 'Prophecy \ Prophet' не найден

Я немного новичок в PHPUnit и тестировании в общем, но, насколько я понимаю, PHPUnit должен иметь встроенную поддержку 1020 * для использования Prophecy, что делает ошибку, приведенную выше, действительно удивительной.

Я пытался установить phpspec / prophecy , но этот процесс завершился неудачно, как показано ниже:

composer require phpspec/prophecy

Using version ^1.10 for phpspec/prophecy
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - Conclusion: don't install phpunit/phpunit 9.0.1
    - Conclusion: remove doctrine/instantiator 1.1.0
    - Installation request for phpunit/phpunit ^9.0 -> satisfiable by phpunit/phpunit[9.0.0, 9.0.1].
    - Conclusion: don't install doctrine/instantiator 1.1.0
    - phpunit/phpunit 9.0.0 requires doctrine/instantiator ^1.2.0 -> satisfiable by doctrine/instantiator[1.2.0, 1.3.0].
    - Can only install one of: doctrine/instantiator[1.2.0, 1.1.0].
    - Can only install one of: doctrine/instantiator[1.3.0, 1.1.0].
    - Installation request for doctrine/instantiator (locked at 1.1.0) -> satisfiable by doctrine/instantiator[1.1.0].


Installation failed, reverting ./composer.json to its original content.
...