1
我有一個方法查詢數據庫,並返回一個數組結果或如果沒有結果爲false。PHPSpec如何問一個方法是否返回這個或那
我需要PHPSpec在這種情況下做的是測試它是返回一個數組還是false,但我不能解決如何做到這一點。
或者我需要模擬數據庫查詢並將其分離出我的方法嗎?
我有一個方法查詢數據庫,並返回一個數組結果或如果沒有結果爲false。PHPSpec如何問一個方法是否返回這個或那
我需要PHPSpec在這種情況下做的是測試它是返回一個數組還是false,但我不能解決如何做到這一點。
或者我需要模擬數據庫查詢並將其分離出我的方法嗎?
你沒有表現出任何代碼,所以我們可以一起工作,但如果當前的匹配不爲你工作,你可以創建新的:
function it_should_return_array_or_false()
{
$this->getOptions()->shouldBeArrayOrFalse();
}
public function getMatchers()
{
return [
'beArrayOrFalse' => function($subject, $value) {
return is_array($value) || $value === false;
},
];
}
AHHHHHH!您一舉澄清了內聯匹配器的工作原理。棒極了。對不起,我應該包含我的代碼!非常感謝! – alexleonard
我不得不稍微修改一下,否則失敗。我需要將該方法分配給一個變量,並將其傳遞給我的內聯匹配器。這就是我所做的:http://laravel.io/bin/9QrR - 是否有另一種方法來做到這一點? – alexleonard