Phpunit: expectExceptionMessageRegExp () был удален в PHPUnit 9 без предупреждения об устаревании в PHPUnit 8.

Созданный на 6 мар. 2020  ·  3Комментарии  ·  Источник: sebastianbergmann/phpunit

| Q | А
| -------------------- | ---------------
| Версия PHPUnit | 9
| Версия PHP | 7.3
| Способ установки | Композитор

Резюме

Коммит, представляющий expectExceptionMessageMatches говорит, что expectExceptionMessageRegExp вызовет предупреждение в 9 и будет удалено в 10.
Но в версии 9.0 этот метод был полностью удален, вместо того, чтобы добавлять в него предупреждение. Это означает, что метод был удален без предупреждения об устаревании при запуске тестов с его использованием.
И нет журнала изменений, в котором говорится, что этот метод устарел (журнал изменений PHPUnit 8 не говорит об устаревании expectExceptionMessageRegExp а журнал изменений PHPUnit 9 говорит, что он удален).

featurassertion typbug

Самый полезный комментарий

Итак, первоначальная фиксация предназначалась для добавления предупреждения об устаревании в 9 (см. Связанный коммит) и удаления в 10. Вот почему в 8.4 и 8.5 нет предупреждения.
Проблема в том, что удаление было выполнено без соблюдения первоначального плана и без добавления предупреждения об устаревании в 8.x, что означает, что предупреждения нет вообще.

Значение предупреждения состоит в том, что я могу работать над устареванием, когда вижу предупреждение (и все сразу), вместо того, чтобы исправлять фатальную ошибку из-за удаленного метода, повторяя это для каждого места, использующего его, пока я не перестану получить фатальную ошибку (или я мог бы найти expectExceptionMessageRegExp с моей IDE, но тогда это не PHPUnit, помогающий мне обновиться, и это могло бы оправдать отказ от использования предупреждений об устаревании вообще ...).
Если возможно, думаю, имеет смысл добавить предупреждение в 8.5, да.

Все 3 Комментарий

expectExceptionMessageMatches был добавлен только в 8.4, поэтому в объявлении PHPUnit 8 об этом вообще не говорится.

expectExceptionMessageRegExp() устарело в PHPUnit 8.4. Я согласен с тем, что об этом устаревании не сообщается, когда метод используется для раздражения, но есть ли действительно смысл в добавлении такого поведения в PHPUnit 8.5?

Итак, первоначальная фиксация предназначалась для добавления предупреждения об устаревании в 9 (см. Связанный коммит) и удаления в 10. Вот почему в 8.4 и 8.5 нет предупреждения.
Проблема в том, что удаление было выполнено без соблюдения первоначального плана и без добавления предупреждения об устаревании в 8.x, что означает, что предупреждения нет вообще.

Значение предупреждения состоит в том, что я могу работать над устареванием, когда вижу предупреждение (и все сразу), вместо того, чтобы исправлять фатальную ошибку из-за удаленного метода, повторяя это для каждого места, использующего его, пока я не перестану получить фатальную ошибку (или я мог бы найти expectExceptionMessageRegExp с моей IDE, но тогда это не PHPUnit, помогающий мне обновиться, и это могло бы оправдать отказ от использования предупреждений об устаревании вообще ...).
Если возможно, думаю, имеет смысл добавить предупреждение в 8.5, да.

Была ли эта страница полезной?
0 / 5 - 0 рейтинги