Mockery __call()具有不同的签名

时间:2014-01-26 00:54:40

标签: php unit-testing testing phpunit mockery

我正在使用Mockery用__call()魔术方法来模拟一个类。

问题是我的模拟对象有__call()与真实类的签名不同,我收到此错误:

ErrorException: Declaration of Mockery_10_EpiTwitter::__call() should be compatible with EpiTwitter::__call($name, $params = NULL)

以下是我的嘲弄程序:

$mock = Mockery::mock('EpiTwitter')->shouldReceive('useAPIVersion')->once()->with('1.1')->mock();

我也尝试进行部分模拟,但仍然出现上述错误。

1 个答案:

答案 0 :(得分:2)

错误是由E_STRICT错误级别引起的,该错误级别不允许子方法具有与其父级不同的参数或访问级别。