在PHPUnit 3.7的方法中测试受保护的方法
我需要测试makeFileMatch函数,这个函数里面有两个受保护的方法。 做这件事的正确行为是什么? 我有一个这个类的模拟,我需要创建这个方法的反射,并更改您的返回值? 我需要一个例子:D在PHPUnit 3.7的方法中测试受保护的方法,php,phpunit,tdd,Php,Phpunit,Tdd,我需要测试makeFileMatch函数,这个函数里面有两个受保护的方法。 做这件事的正确行为是什么? 我有一个这个类的模拟,我需要创建这个方法的反射,并更改您的返回值? 我需要一个例子:D public function makeFileMatch($templateUrl,$width,$height) { $result = $this->assembleCurlRequest($templateUrl, $width, $height); return $this
public function makeFileMatch($templateUrl,$width,$height)
{
$result = $this->assembleCurlRequest($templateUrl, $width, $height);
return $this->parseJsonResult($result);
}
/**
* @param $result
* @return array
*/
protected function transformJsonInArray($result)
{
return (array)json_decode($result);
}
/**
* @param $result
* @return bool|string
*/
protected function tryToRetrieveUrlFromJsonResponse($result)
{
if ($result['status'] == 'success') {
return $this->getCreatedThumbByUrl($result['data']->url);
}
return false;
}
如果你的问题是:如何在PHPUnit测试中调用受保护的方法,你应该看看这篇很棒的博文:基本上,你可以使用PHP反射来更改方法的可访问性。我知道这样做,但我不知道在我更改了你的可见性之后,如何更改这些方法的返回