Покрытие кода PHP раннего выхода в генераторах с PHPUnit и XDebug

Я не уверен, является ли это ошибкой, но мне кажется, что я не могу получить 100% покрытие с ранним выходом из генератора PHP 5.5.

Например:

<?php

function gen($branch = false)
{
yield;

if($branch) {
echo 'branched';
return;
} // This line is never covered.
echo 'did not branch';

}

Закрывающая скобка оператора if никогда не закрывается. Он не считается «мертвым кодом», он ведет себя так, как будто вы не рассматривали возможность выхода из оператора if.

Я не хочу использовать else потому что, как сказал бы phpmd, «иначе никогда не нужно», но я хотел бы получить 100% охват (так как это позволяет легко увидеть, что я что-то пропустил в новом коде без детализации).

Кто-нибудь еще сталкивался с этим? Есть ли решение?

0

Решение

Это был ошибка в Xdebug, и разрешается в версия 2.4.0

1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector