Example #1
0
 public function testIgnoreExtraneous()
 {
     $values = array('a' => 1, 'b' => 2);
     $form = new Form(array('a' => array('required')));
     $this->assertTrue($form->validate($values));
     $this->assertEquals($values['a'], $form->a);
     $this->assertNull($form->b);
     $form->setValues(array());
     $this->assertFalse($form->validate($values, array('ignore_extraneous' => false)));
     $this->assertTrue($form->hasErrors('b'));
     $form->setValues(array());
     $form->setOptions(array('ignore_extraneous' => false));
     $this->assertFalse($form->validate($values));
     $this->assertTrue($form->hasErrors('b'));
     $form->setValues(array('c' => 3));
     $form->setOptions(array('ignore_extraneous' => false));
     $this->assertTrue($form->validate(array('a' => 1)), 'Ignore extraneous default');
 }