从 PHPUnit Test 返回参数作为数组的一部分



我想从这个模拟方法返回一个数组,我希望它包含最初传递给该方法的参数之一。

下面的代码运行,但数据不是具有原始参数值,而是类型的对象

PHPUnit_Framework_MockObject_Stub_ReturnArgument

$stub->method('insert')->willReturn(array('success'=>true,'data'=>$this->returnArgument(0)));

我能够获得原始参数的唯一方法是仅返回参数,但这样我就没有我需要的数组

$stub->method('insert')->will('data'=>$this->returnArgument(0));

我做错了什么小事,还是我需要尝试实现回调或类似的事情?

您可以使用 returnCallback 作为示例:

        ->will($this->returnCallback(function ($arg1) {
                return array('success'=>true,'data'=>$arg1);
        }));

希望这个帮助

最新更新