次のようなコードがあります。
public function foo(Bar $bar) {
if ($bar instanceof Iterator) {
//...
}
}
これをテストするには、次を使用しています。
$this->getMock('Bar');
ただし、私のコードは Iterator を実装する Bar のインスタンスを探しているため、基本的に 2 つの型があります。getMock('Bar') または getMock('Iterator') を呼び出すと、コードはテストできなくなります。
モックにインターフェイスを実装させるにはどうすればよいですか? これは可能でなければなりませんね。