Имеется некая библиотека, в ней есть класс:
class Foo
{
public static function bar(MyInterface $example)
{
//some actions
return 1;
}
}
Имеется test-case
class FooTest extends \PHPUnit_Framework_TestCase
{
public function testFoo()
{
//...create $object for testing
self::assertEquals(1, Foo::bar($object));
}
}
Соответственно, возникает вопрос, как правильно протестировать метод.
Сначала я попытался сделать $object = $this->getMock('MyInterface'), но в итоге получается объект типа Mock_MyInterface, и при вызове метода интерпретатор ругается на несовпадения типа.
Как правильно поступить? Реализовать класс, имлементирующий данный интерфейс в папке с тестами? Или есть другой путь?