コード例 #1
0
 function testErrorListAttachedToErrorMessage()
 {
     $error_list = new lmbErrorList();
     $error_list->addError('error1');
     $error_list->addError('error2');
     $exception = new lmbValidationException('Message.', $error_list, $params = array());
     $this->assertEqual($exception->getOriginalMessage(), 'Message. Errors list : error1, error2');
 }
コード例 #2
0
 function testRenameFieldsWithSimilarNames()
 {
     $list = new lmbErrorList();
     $list->addError($message = '{Field_1} must repeat {Field_2}', array('Field_1' => 'passretype', 'Field_2' => 'pass'));
     $new_field_names = array('passretype' => 'secondary typed password', 'pass' => 'first typed password');
     $list->renameFields($new_field_names);
     $errors = $list->export();
     $this->assertEqual($errors[0]['fields'], array('Field_1' => $new_field_names['passretype'], 'Field_2' => $new_field_names['pass']));
 }
コード例 #3
0
 function testRenderForms()
 {
     $template = '{{form id="form1" name="form1"}}' . '{{form:errors to="$form_errors"/}}' . '{{list using="$form_errors" as="$item"}}{{list:item}}{$item.message}|{{/list:item}}{{/list}}' . '{{input type="text" name="title" title="Title" /}}' . '{{/form}}';
     $tpl = $this->_createTemplate($template, 'test.phtml');
     $view = $this->_createView($tpl);
     $error_list = new lmbErrorList();
     $error_list->addError('An error in {Field} with {Value}', array('Field' => 'title'), array('Value' => 'value1'));
     $view->setFormDatasource('form1', new lmbSet(array('title' => 'My title')));
     $view->setFormErrors('form1', $error_list);
     $expected = '<form id="form1" name="form1">An error in &quot;Title&quot; with value1|' . '<input type="text" name="title" title="Title" value="My title" />' . '</form>';
     $this->assertEqual($view->render(), $expected);
 }
コード例 #4
0
 function testRenderForms()
 {
     $template = '{$hello}' . '<form id="form1" name="form1" runat="server"><input type="text" name="title" title="Title" /></form>' . '<form id="form2" name="form2" runat="server"></form>';
     $this->registerTestingTemplate($path = '/limb/form_view.html', $template);
     $view = new lmbWactView($path);
     $view->setCacheDir(LIMB_VAR_DIR . '/compiled');
     $view->set('hello', 'Hello world!');
     $error_list = new lmbErrorList();
     $error_list->addError('An error in {Field} with {Value}', array('Field' => 'title'), array('Value' => 'value'));
     $view->setFormDatasource('form1', $form1 = new lmbSet());
     $view->setFormErrors('form1', $error_list);
     $view->setFormDatasource('form2', $form2 = new lmbSet());
     $this->assertEqual($view->render(), 'Hello world!' . '<form id="form1" name="form1"><input type="text" name="title" title="Title" value="" /></form>' . '<form id="form2" name="form2"></form>');
     $template = $view->getWACTTemplate();
     $form1_component = $template->findChild('form1');
     $this->assertReference($form1_component->getDataSource(), $form1);
     // lmbErrorList is converted into lmbWactErrorList
     $errors_dataset = $form1_component->getErrorsDataSet();
     $errors_dataset->rewind();
     $error = $errors_dataset->current();
     $this->assertEqual($error['message'], 'An error in "Title" with value');
     $form2_component = $template->findChild('form2');
     $this->assertReference($form2_component->getDataSource(), $form2);
 }
コード例 #5
0
 function testIsNotValid()
 {
     $error_list = new lmbErrorList();
     $object = $this->_createActiveRecordWithDataAndSave();
     $this->assertTrue($object->isValid());
     $error_list->addError('whatever');
     //actually it's a dirty simulation but that's how it works really
     $object->save($error_list);
     $this->assertFalse($object->isValid());
 }