Php Laravel 5.1模拟和#x27;独特的';验证规则

Php Laravel 5.1模拟和#x27;独特的';验证规则,php,validation,unit-testing,laravel,laravel-5.1,Php,Validation,Unit Testing,Laravel,Laravel 5.1,我们在应用程序上使用“唯一”规则进行验证,但在测试中,我们通过使用存储库模式模拟数据库层。有没有办法模拟唯一的规则,这样它就不会尝试检查数据库 我试着模仿illumb\Validation\Validator::validateUnique它不起作用,但因为该方法是受保护的。

我们在应用程序上使用“唯一”规则进行验证,但在测试中,我们通过使用存储库模式模拟数据库层。有没有办法模拟
唯一的
规则,这样它就不会尝试检查数据库


我试着模仿
illumb\Validation\Validator::validateUnique
它不起作用,但因为该方法是受保护的。

规则以及一些其他规则(例如exists)使用状态验证器进行验证检查。默认情况下,使用数据库存在验证程序。它实现了由两种方法组成的PresenceVerifierInterface。您可以模拟该验证器的方法,并在测试期间使用它。您可以使用访问验证器

\Validator::getPresenceVerifier()
\Validator::setPresenceVerifier()