Я только начал играть с PHPUnit, и мне было интересно, можно ли перезаписать/заменить метод заглушкой. У меня есть некоторый опыт работы с Синоном, и с Синоном это возможно (http://sinonjs.org/docs/#stubs)PHPUnit перезаписать фактический метод с заглушкой
Я хочу что-то вроде этого:
<?php
class Foo {
public $bar;
function __construct() {
$this->bar = new Bar();
}
public function getBarString() {
return $this->bar->getString();
}
}
class Bar {
public function getString() {
return 'Some string';
}
}
class FooTest extends PHPUnit_Framework_TestCase {
public function testStringThing() {
$foo = new Foo();
$mock = $this->getMockBuilder('Bar')
->setMethods(array('getString'))
->getMock();
$mock->method('getString')
->willReturn('Some other string');
$this->assertEquals('Some other string', $foo->getBarString());
}
}
?>