PHPUnit: Как смоделировать функцию в классе?
У меня есть класс под названием «QueryService». В этом классе есть функция с именем «GetErrorCode». Также в этом классе есть функция под названием «DoQuery». Так что вы можете смело сказать, что у меня что-то вроде этого:
class QueryService {
function DoQuery($request) {
$svc = new IntegratedService();
$result = $svc->getResult($request);
if ($result->success == false)
$result->error = $this->GetErrorCode($result->errorCode);
}
function GetErrorCode($errorCode) {
// do stuff
}
}
Я хочу создать тест phpunit, который будет проверять "DoQuery". Тем не менее, я хочу, чтобы результат "GetErrorCode" был определен с помощью макета. Другими словами, я хочу сказать, что если $ errorCode = 1, GetErrorCode должен обойти любую логику в этой функции и просто вернуть слово «ONE». Если это любое число, отличное от 1, оно должно вернуть «НЕТ».
Как вы устанавливаете это с помощью PHPUNIT Mocks?