Как добавить пользовательское ограничение в phpunit? - PullRequest
0 голосов
/ 20 мая 2018

Я хочу сравнить интерфейс по пользовательскому значению в PHPUnit.К сожалению, встроенных методов недостаточно, и я хочу расширить их, чтобы добавить собственное сравнение.

Я могу сказать из документов , что существует стандартный способ реализацииновое утверждение.Тем не менее, с первого взгляда на исходный код кажется, что вы можете просто написать собственный компаратор и зарегистрировать его где-нибудь, чтобы использовать его.

Где (и как) это делает одинзарегистрировать пользовательский компаратор?

1 Ответ

0 голосов
/ 20 мая 2018

Это на самом деле удивительно легко.

Вы можете увидеть пример компаратора в источнике.

Чтобы добавить один из ваших собственных, используйте экземпляр singleton SebastianBergmann\Comparator\Factory для регистрации компаратора в вашем файле PHPUnit bootstrap.php.

use SebastianBergmann\Comparator\Factory;

$comparatorFactory = Factory::getInstance();
$comparatorFactory->register(new EquivalentComparator());

впредь при любом вызове $this->assertEquals в тестовом примере будет использоваться компаратор.

Компаратор проверяет, является ли ондопустимо для значений, что делает его очень гибким.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...