#php #unit-testing #pcov
Вопрос:
введите описание изображения здесь
если (!function_exists(‘день рождения_то_аж’)) {
/**
* calculate the age of input date
* @param Carbon $date input date
* @return int the age
*/
function birthday_to_age(Carbon $date): int
{
return floor((date('Ymd') - $date->format('Ymd')) / 10000);
}
}
если (!function_exists(‘log_http_client_response’)) {
/**
* Function log_http_client_response
* @param Response $response
* @param string $prefix
* @param string $level
*/
function log_http_client_response(Response $response, string $prefix = '', string $level = 'debug')
{
$content = $prefix . "Response http_status: {$response->status()}, http_headers: "
. json_encode($response->headers()) . ", http_body: {$response->body()}";
Log::$level($content);
}
}
Отчет о покрытии показал две строки «если (!function_exists(‘имя_функции’))», которые не были охвачены, но эти две функции в «если» были охвачены. Это смешно, потому что, когда я использовал xdebug в качестве драйвера, эти две строки были покрыты, но когда я сменил драйвер на pcov без каких-либо других изменений, возникла проблема.
Сталкивался ли кто-нибудь с этой проблемой? кто-нибудь знает, как охватить эти две строки?
Спасибо