在我想要测试的函数中,我有以下检查
if (!is_callable(array($object, $methodName))) {
throw new 'InvalidArgumentException(
sprintf(
'Unable to call method %s::%s() on object $%s',
get_class($object),
$methodName,
$objectName
)
);
}
如何测试异常?
如何使MOCKERY对象包含不可调用或可能是属性的方法?我不确定。
您可以简单地实例化一个空的StdClass
对象。
public function testCallable()
{
$object = new 'StdClass();
$object2 = 'Mockery::mock(''StdClass')
->shouldReceive('myMethod')
->andReturn('foo')
->getMock();
$this->assertFalse(is_callable(array($object, 'myMethod')));
$this->assertTrue(is_callable(array($object2, 'myMethod')));
}