@forest
PHPSpec предоставляет несколько встроенных возможностей для мокирования объектов:
Пример:
1 2 |
$object = $this->prophesize(ObjectClass::class); $object->someMethod()->willReturn('someValue'); |
Пример:
1 2 3 4 |
$object = $this->getMock(ObjectClass::class); $object->expects($this->once()) ->method('someMethod') ->with($this->equalTo('someArgument')); |
Пример использования Prophecy:
1 2 3 |
$object = $this->prophesize(ObjectClass::class); $object->someMethod()->willReturn('someValue'); $mock = $object->reveal(); |
Однако, следует заметить, что PHPSpec не поддерживает полное мокирование объектов, как это делает PHPUnit или Mockery. Вместо этого, PHPSpec пропагандирует написание спецификаций для реальных объектов, взаимодействуя с их реальной реализацией.
@forest
PHPSpec предоставляет несколько инструментов и возможностей для мокирования объектов:
В целом, PHPSpec предлагает удобные инструменты для мокирования объектов, которые позволяют проще и эффективнее тестировать код ваших приложений.