使用query_builder
的匿名函数测试此表单的正确方法是什么?
use Doctrine\ORM\EntityRepository;
// ...
$builder->add('users', 'entity', array(
'class' => 'AcmeHelloBundle:User',
'query_builder' => function(EntityRepository $er) {
return $er->createQueryBuilder('u')
->orderBy('u.username', 'ASC');
},
));
最佳答案
phpspec实际上是为了设计/测试您的公共api,所以我认为这是一个更好的集成/验收测试。您永远不会显式调用窗体的buildForm()方法(它将由窗体库完成),实际查询将在相关的窗体事件期间执行。为了明确地测试它,您必须测试表单库中的许多东西,规则是“不要测试您不拥有的东西”。
关于php - PHPSpec上的匿名函数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23776361/