使用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/

10-11 03:24