ArrayCollection のメンバーを追加するフォームの機能テストには、次のステートメントがあります。
$form['client[members][1][fname]'] = 'Benny';
フィールド名は DOM インスペクタで検証されました。
この行のコンソール出力は次のとおりです。
InvalidArgumentException: Unreachable field "members"
G:\Documents\workspace\sym\vendor\symfony\symfony\src\Symfony\Component\DomCrawler\Form.php:459
G:\Documents\workspace\sym\vendor\symfony\symfony\src\Symfony\Component\DomCrawler\Form.php:496
G:\Documents\workspace\sym\vendor\symfony\symfony\src\Symfony\Component\DomCrawler\Form.php:319
G:\Documents\workspace\sym\src\Mana\ClientBundle\Tests\Controller\ClientControllerTest.php:57
ArrayCollection メンバーの追加をテストするには、どのメソッドを使用する必要がありますか?
必要に応じて編集します (注意: リダイレクトに従うことがオンになっています):
//link to trigger adding household member form $link = $crawler->selectLink('Add household member')->link(); $crawler = $client->click($link); $form = $crawler->selectButton('Add client')->form(); $form['client[members][1][fname]'] = 'Benny'; $form['client[members][1][dob]'] = "3/12/1999"; $crawler = $client->submit($form); $this->assertTrue($crawler->filter('html:contains("Client View Form")')->count() > 0);