duandange7480
2015-06-30 13:56
浏览 60
已采纳

Symfony 2 - PHPUnit - 传递$ options进行表单测试

i'm passing my symfony2 application to PHPUnit and i have some problems with the form test. In my form i have a choice list and i filled this list by passing from controller array of choices with $options like this :

//Controller
$form = $this->createForm(new AdddocType(), array(
    'docdata' => $myarray,
));

//Form
->add('myfield', 'choice', array(
    'choices' => $options['data']['docdata'],
    'multiple' => false,
    'required' => true,
    'expanded' => false,
))

And here my PHPUnit test :

public function testaddContact()
{
    $formData = array(
        'myfield' => 10,
        ...
        ...
    );

    $type = new AdddocType();
    $form = $this->factory->create($type);
    $form->submit($formData);

    $this->assertTrue($form->isSynchronized());
}

When i pass PHPUnit, the code stop at this line in my formType :

'choices' => $options['data']['docdata'],

My question is : How can i pass the $options in my PHPUnit test ?

Thanks

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • duanche9384 2015-06-30 14:13
    已采纳

    Options can be passed in the third argument of create(). It isn't very hard to find that out...

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题