Beispiel #1
0
 public function testMultipleSelect()
 {
     // Setup some country codes, and whether they should be checked.
     $countries = ['US' => false, 'GB' => true, 'FR' => true];
     $form = new Form();
     $select = $form->addMultipleSelect('countries');
     foreach ($countries as $code => $checked) {
         $select->addOption($code, $code);
     }
     try {
         $form->populate(['countries' => 'US']);
         $this->fail('Should complain that MultipleSelect does not accept a string');
     } catch (\InvalidArgumentException $e) {
         // Works as expected!
     }
     $expected = array_keys($countries, true);
     sort($expected);
     $this->assertTrue($form->populate(['countries' => $expected])->isValid());
     $actual = $select->getValues();
     sort($actual);
     $this->assertEquals($expected, $actual);
 }