Esempio n. 1
0
 public function test_numerical_indexes_for_select()
 {
     $Person = new MockAkActiveRecord($this);
     $Person->setReturnValue('get', '2', array('role'));
     $FormOptionsHelper = new FormOptionsHelper();
     $FormOptionsHelper->addObject('person', $Person);
     $this->assertEqual(trim(str_replace("\n", '', $FormOptionsHelper->select('person', 'role', array('Admin' => 1, 'Moderator' => 2, 'Visitor' => 3)))), '<select id="person_role" name="person[role]"><option value="1">Admin</option>' . '<option selected="selected" value="2">Moderator</option>' . '<option value="3">Visitor</option>' . '</select>');
     $this->assertEqual(trim(str_replace("\n", '', $FormOptionsHelper->select('person', 'role', array('Admin' => 0, 'Moderator' => 1, 'Visitor' => 2)))), '<select id="person_role" name="person[role]"><option value="0">Admin</option>' . '<option value="1">Moderator</option>' . '<option selected="selected" value="2">Visitor</option>' . '</select>');
 }
Esempio n. 2
0
 public function test_for_form_helpers()
 {
     $controller = new MockAkActionController($this);
     $controller->setReturnValue('urlFor', '/url/for/test');
     $form_tag_helper = new FormTagHelper();
     $controller->returnsByValue('__get', $form_tag_helper, array('ak_form_tag_helper'));
     $form_tag_helper->setController($controller);
     $person = new MockAkActiveRecord($this);
     $person->setReturnValue('get', 'Bermi', array('name'));
     $task = new MockAkActiveRecord($this);
     $task->setReturnValue('get', 'Do the testing');
     $form_helper = new FormHelper(array('person' => &$person));
     $form_helper->setController($controller);
     $this->assertReference($form_helper->getObject('person'), $person);
     ob_start();
     $f = $form_helper->form_for('person', $person, array('url' => array('action' => 'update')));
     $form_opening_markup = ob_get_clean();
     $this->assertTrue(strstr($form_opening_markup, '<form action="/url/for/test" method="post">'), 'Form open tag not found');
     $this->assertTrue(strstr($form_opening_markup, '<div style="margin:0;padding:0;display:inline"><input name="authenticity_token" type="hidden" value='), 'Form authenticity_token tag not found');
     $this->assertTrue(strstr($form_opening_markup, '<div style="margin:0;padding:0;display:inline"><input name="_method" type="hidden" value="put" /></div>'), 'Form PUT method tag not found');
     $this->assertEqual($form_helper->text_field('task', 'description'), '<input id="task_description" name="task[description]" size="30" type="text" />');
     $this->assertEqual($form_helper->text_field('task', 'description', array('object' => &$task)), '<input id="task_description" name="task[description]" size="30" type="text" value="Do the testing" />');
     $this->assertEqual($f->text_field('person', 'name'), '<input id="person_name" name="person[name]" size="30" type="text" value="Bermi" />');
     $person->setReturnValue('get', 'Alicia', array('first_name'));
     $this->assertEqual($f->text_field('person', 'first_name', array('size' => 80)), '<input id="person_first_name" name="person[first_name]" size="80" type="text" value="Alicia" />');
     $this->assertEqual($form_helper->password_field('person', 'password'), '<input id="person_password" name="person[password]" size="30" type="password" />');
     $this->assertEqual($form_helper->file_field('person', 'photo'), '<input id="person_photo" name="person[photo]" size="30" type="file" />');
     $this->assertEqual($form_helper->hidden_field('person', 'referer'), '<input id="person_referer" name="person[referer]" type="hidden" />');
     $this->assertEqual($form_helper->text_area('person', 'notes'), '<textarea cols="40" id="person_notes" name="person[notes]" rows="20"></textarea>');
     $this->assertEqual($form_helper->text_field('person', 'name'), '<input id="person_name" name="person[name]" size="30" type="text" />');
     $person->setReturnValue('get', '1234', array('password'));
     $person->setReturnValue('get', 'no_value_on_file_types', array('photo'));
     $person->setReturnValue('get', 'http://www.example.com', array('referer'));
     $person->setReturnValue('get', 'Check this "NOTES"', array('notes'));
     $this->assertEqual($f->password_field('person', 'password'), '<input id="person_password" name="person[password]" size="30" type="password" value="1234" />');
     $this->assertEqual($f->file_field('person', 'photo'), '<input id="person_photo" name="person[photo]" size="30" type="file" />');
     $this->assertEqual($f->hidden_field('person', 'referer'), '<input id="person_referer" name="person[referer]" type="hidden" value="http://www.example.com" />');
     $this->assertEqual($f->text_area('person', 'notes'), '<textarea cols="40" id="person_notes" name="person[notes]" rows="20">Check this &quot;NOTES&quot;</textarea>');
     $this->assertEqual($f->text_field('person', 'name'), '<input id="person_name" name="person[name]" size="30" type="text" value="Bermi" />');
     $person->setReturnValue('get', 1, array('validate'));
     $this->assertEqual($f->check_box("post", "validate"), '<input name="post[validate]" type="hidden" value="0" />' . '<input checked="checked" id="post_validate" name="post[validate]" type="checkbox" value="1" />');
     $this->assertEqual($f->radio_button('post', 'validate', 'si'), '<input id="post_validate_si" name="post[validate]" type="radio" value="si" />');
     $this->assertEqual($f->radio_button('post', 'validate', '1'), '<input checked="checked" id="post_validate_1" name="post[validate]" type="radio" value="1" />');
 }