Проблемы с издевательством над новыми классами только для чтения PHP 8.2 с двойными тестами PHPUnitPhp

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Проблемы с издевательством над новыми классами только для чтения PHP 8.2 с двойными тестами PHPUnit

Сообщение Anonymous »

Я пытаюсь имитировать класс только для чтения из PHP 8.2 в PHPUnit и получаю следующую ошибку:

Symfony\Component\ErrorHandler\Error\FatalError^ {#7
#message: «Ошибка компиляции: класс Mock_Provider_f80b7c4d, не предназначенный только для чтения, не может расширить класс только для чтения App\Validator\Password\Rule\Provider»
#code: 0
#file: «/var/www /html/teach-me/vendor/phpunit/phpunit/src/Framework/MockObject/MockClass.php(51) : код eval()"
#line: 3
-error: array: 4 [
"type" => 64
"message" => "Класс не только для чтения Mock_Provider_f80b7c4d не может расширять класс только для чтения App\Validator\Password\Rule\Provider"
"file" => "/var/www/html/teach-me/vendor/phpunit/phpunit/src/Framework/MockObject/MockClass.php(51): код eval()"
"line" => 3
]


Я думаю, что эта проблема возникает из-за того, что PHPUnit создает класс по умолчанию, не предназначенный только для чтения, для имитируемого объекта. Есть ли способ принудительно создать класс только для чтения?

Код: Выделить всё

"phpunit/phpunit": "^9.5"
Я удалил ключевое слово только для чтения из своего класса, и эта ошибка исчезла. Хотелось бы использовать новые возможности PHP, но без возможности мокить объекты это невозможно.
Возможно, я что-то делаю не так и проблема совсем не в том, что я думаю?

Подробнее здесь: https://stackoverflow.com/questions/751 ... st-doubles
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Php»