0
public function __call($method, $args)
{
if (! in_array($method, $this->validMethods))
{
throw new \BadMethodCallException("Not a valid method: {$method}");
}
}
如何測試__call
方法以確保$method
在我的有效方法列表中?現在這就是我所做的。測試__call方法
/**
* @covers World\Transmission::__call()
* @expectedException BadMethodCallException
* @expectedExceptionMessage Not a valid method: foo
*/
public function test__callInvalidRequest()
{
$m = m::mock('World\\Transmission', array($this->config))->makePartial();
$m->foo(array('foo'));
}
我得到的錯誤是call_user_func_array()
的無盡痕跡。
Maximum function nesting level of '100' reached, aborting!.
...
什麼是你的類:'世界\ Transmission' – srain
http://bpaste.net/show/4jaevNSsQrXLVjxyIzF2/ – Michelle
如果刪除'$ m-> foo(array('foo'));',仍然達到100嵌套級別? – srain