Exemplo n.º 1
0
 public function testClearingAttachedItemsShouldNotCauseIterationToRaiseExceptions()
 {
     $form = new Form();
     $form->addElements(array('username' => 'text', 'password' => 'text'));
     $form->clearElements();
     try {
         foreach ($form as $item) {
         }
     } catch (\Zend\Form\Exception\UnexpectedValueException $e) {
         $message = "Clearing elements prior to iteration should not cause iteration to fail;\n" . $e->getMessage();
         $this->fail($message);
     }
     $form->addElements(array('username' => 'text', 'password' => 'text'))->addDisplayGroup(array('username', 'password'), 'login');
     $form->clearDisplayGroups();
     try {
         foreach ($form as $item) {
         }
     } catch (\Zend\Form\Exception\UnexpectedValueException $e) {
         $message = "Clearing display groups prior to iteration should not cause iteration to fail;\n" . $e->getMessage();
         $this->fail($message);
     }
     $subForm = new \Zend\Form\SubForm();
     $form->addSubForm($subForm, 'foo');
     $form->clearSubForms();
     try {
         foreach ($form as $item) {
         }
     } catch (\Zend\Form\Exception\UnexpectedValueException $e) {
         $message = "Clearing sub forms prior to iteration should not cause iteration to fail;\n" . $e->getMessage();
         $this->fail($message);
     }
 }
Exemplo n.º 2
0
 /**
  * @group ZF-11831
  */
 public function testElementsOfSubFormReceiveCorrectDefaultTranslator()
 {
     $isEmptyKey = \Zend\Validator\NotEmpty::IS_EMPTY;
     // Global default translator
     $trDefault = new Translator(array('adapter' => 'arrayAdapter', 'content' => array($isEmptyKey => 'Default'), 'locale' => 'en'));
     Registry::set('Zend_Translate', $trDefault);
     // Translator to use for elements
     $trElement = new Translator(array('adapter' => 'arrayAdapter', 'content' => array($isEmptyKey => 'Element'), 'locale' => 'en'));
     \Zend\Validator\AbstractValidator::setDefaultTranslator($trElement);
     // Change the form's translator
     $form = new Form();
     $form->addElement(new \Zend\Form\Element\Text('foo', array('required' => true, 'validators' => array('NotEmpty'))));
     // Create a subform with it's own validator
     $sf1 = new SubForm();
     $sf1->addElement(new \Zend\Form\Element\Text('foosub', array('required' => true, 'validators' => array('NotEmpty'))));
     $form->addSubForm($sf1, 'Test1');
     $form->isValid(array());
     $messages = $form->getMessages();
     $this->assertEquals('Element', @$messages['foo'][$isEmptyKey], 'Form element received wrong validator');
     $this->assertEquals('Element', @$messages['Test1']['foosub'][$isEmptyKey], 'SubForm element received wrong validator');
 }
Exemplo n.º 3
0
 /**
  * @group ZF-3272
  */
 public function testRenderedSubFormDtShouldContainNoBreakSpace()
 {
     $subForm = new SubForm(array('elements' => array('foo' => 'text', 'bar' => 'text')));
     $form = new Form();
     $form->addSubForm($subForm, 'foobar')->setView(new View());
     $html = $form->render();
     $this->assertContains('>&#160;</dt>', $html);
 }