考虑以下方法:PHPUnit - 如何测试回调被调用?
public function foo($callback) {
call_user_func($callback);
}
如何我会测试该回调实际上得到调用,使用PHPUnit的? foo()
方法没有返回值。它唯一的工作就是执行给它的回调,以及其他一些查找和misc。为简单起见,我忽略了这些处理。
我想是这样的:
public method testFoo() {
$test = $this;
$this->obj->foo(function() use ($test) {
$test->pass();
});
$this->fail();
}
...但显然没有pass()
方法,所以这是行不通的。
谢谢!这很好。我遗漏了'will()'调用,因为回调并不需要做任何事情。 – FtDRbwLXw6 2012-02-15 16:40:01