form_test.php.svn-base
来自「PHP 知识管理系统(基于树结构的知识管理系统), 英文原版的PHP源码。」· SVN-BASE 代码 · 共 323 行 · 第 1/2 页
SVN-BASE
323 行
'name' => 'go', 'alt' => 'Go!', 'id' => '9'))); $this->assertTrue($form->hasImage(new SimpleByLabel('Go!'))); $this->assertEqual( $form->submitImage(new SimpleByLabel('Go!'), 100, 101), new SimpleGetEncoding(array('go.x' => 100, 'go.y' => 101))); $this->assertTrue($form->hasImage(new SimpleByName('go'))); $this->assertEqual( $form->submitImage(new SimpleByName('go'), 100, 101), new SimpleGetEncoding(array('go.x' => 100, 'go.y' => 101))); $this->assertTrue($form->hasImage(new SimpleById(9))); $this->assertEqual( $form->submitImage(new SimpleById(9), 100, 101), new SimpleGetEncoding(array('go.x' => 100, 'go.y' => 101))); } function testImageSubmitButtonWithAdditionalData() { $form = &new SimpleForm(new SimpleFormTag(array()), $this->page('htp://host')); $form->addWidget(new SimpleImageSubmitTag(array( 'type' => 'image', 'src' => 'source.jpg', 'name' => 'go', 'alt' => 'Go!'))); $this->assertEqual( $form->submitImage(new SimpleByLabel('Go!'), 100, 101, array('a' => 'A')), new SimpleGetEncoding(array('go.x' => 100, 'go.y' => 101, 'a' => 'A'))); } function testButtonTag() { $form = &new SimpleForm(new SimpleFormTag(array()), $this->page('http://host')); $widget = &new SimpleButtonTag( array('type' => 'submit', 'name' => 'go', 'value' => 'Go', 'id' => '9')); $widget->addContent('Go!'); $form->addWidget($widget); $this->assertTrue($form->hasSubmit(new SimpleByName('go'))); $this->assertTrue($form->hasSubmit(new SimpleByLabel('Go!'))); $this->assertEqual( $form->submitButton(new SimpleByName('go')), new SimpleGetEncoding(array('go' => 'Go'))); $this->assertEqual( $form->submitButton(new SimpleByLabel('Go!')), new SimpleGetEncoding(array('go' => 'Go'))); $this->assertEqual( $form->submitButton(new SimpleById(9)), new SimpleGetEncoding(array('go' => 'Go'))); } function testMultipleFieldsWithSameNameSubmitted() { $form = &new SimpleForm(new SimpleFormTag(array()), $this->page('htp://host')); $input = &new SimpleTextTag(array('name' => 'elements[]', 'value' => '1')); $form->addWidget($input); $input = &new SimpleTextTag(array('name' => 'elements[]', 'value' => '2')); $form->addWidget($input); $form->setField(new SimpleByLabelOrName('elements[]'), '3', 1); $form->setField(new SimpleByLabelOrName('elements[]'), '4', 2); $submit = $form->submit(); $this->assertEqual(count($submit->_request), 2); $this->assertIdentical($submit->_request[0], new SimpleEncodedPair('elements[]', '3')); $this->assertIdentical($submit->_request[1], new SimpleEncodedPair('elements[]', '4')); } function testSingleSelectFieldSubmitted() { $form = &new SimpleForm(new SimpleFormTag(array()), $this->page('htp://host')); $select = &new SimpleSelectionTag(array('name' => 'a')); $select->addTag(new SimpleOptionTag( array('value' => 'aaa', 'selected' => ''))); $form->addWidget($select); $this->assertIdentical( $form->submit(), new SimpleGetEncoding(array('a' => 'aaa'))); } function testSingleSelectFieldSubmittedWithPost() { $form = &new SimpleForm(new SimpleFormTag(array('method' => 'post')), $this->page('htp://host')); $select = &new SimpleSelectionTag(array('name' => 'a')); $select->addTag(new SimpleOptionTag( array('value' => 'aaa', 'selected' => ''))); $form->addWidget($select); $this->assertIdentical( $form->submit(), new SimplePostEncoding(array('a' => 'aaa'))); } function testUnchecked() { $form = &new SimpleForm(new SimpleFormTag(array()), $this->page('htp://host')); $form->addWidget(new SimpleCheckboxTag( array('name' => 'me', 'type' => 'checkbox'))); $this->assertIdentical($form->getValue(new SimpleByName('me')), false); $this->assertTrue($form->setField(new SimpleByName('me'), 'on')); $this->assertEqual($form->getValue(new SimpleByName('me')), 'on'); $this->assertFalse($form->setField(new SimpleByName('me'), 'other')); $this->assertEqual($form->getValue(new SimpleByName('me')), 'on'); } function testChecked() { $form = &new SimpleForm(new SimpleFormTag(array()), $this->page('htp://host')); $form->addWidget(new SimpleCheckboxTag( array('name' => 'me', 'value' => 'a', 'type' => 'checkbox', 'checked' => ''))); $this->assertIdentical($form->getValue(new SimpleByName('me')), 'a'); $this->assertTrue($form->setField(new SimpleByName('me'), 'a')); $this->assertEqual($form->getValue(new SimpleByName('me')), 'a'); $this->assertTrue($form->setField(new SimpleByName('me'), false)); $this->assertEqual($form->getValue(new SimpleByName('me')), false); } function testSingleUncheckedRadioButton() { $form = &new SimpleForm(new SimpleFormTag(array()), $this->page('htp://host')); $form->addWidget(new SimpleRadioButtonTag( array('name' => 'me', 'value' => 'a', 'type' => 'radio'))); $this->assertIdentical($form->getValue(new SimpleByName('me')), false); $this->assertTrue($form->setField(new SimpleByName('me'), 'a')); $this->assertEqual($form->getValue(new SimpleByName('me')), 'a'); } function testSingleCheckedRadioButton() { $form = &new SimpleForm(new SimpleFormTag(array()), $this->page('htp://host')); $form->addWidget(new SimpleRadioButtonTag( array('name' => 'me', 'value' => 'a', 'type' => 'radio', 'checked' => ''))); $this->assertIdentical($form->getValue(new SimpleByName('me')), 'a'); $this->assertFalse($form->setField(new SimpleByName('me'), 'other')); } function testUncheckedRadioButtons() { $form = &new SimpleForm(new SimpleFormTag(array()), $this->page('htp://host')); $form->addWidget(new SimpleRadioButtonTag( array('name' => 'me', 'value' => 'a', 'type' => 'radio'))); $form->addWidget(new SimpleRadioButtonTag( array('name' => 'me', 'value' => 'b', 'type' => 'radio'))); $this->assertIdentical($form->getValue(new SimpleByName('me')), false); $this->assertTrue($form->setField(new SimpleByName('me'), 'a')); $this->assertIdentical($form->getValue(new SimpleByName('me')), 'a'); $this->assertTrue($form->setField(new SimpleByName('me'), 'b')); $this->assertIdentical($form->getValue(new SimpleByName('me')), 'b'); $this->assertFalse($form->setField(new SimpleByName('me'), 'c')); $this->assertIdentical($form->getValue(new SimpleByName('me')), 'b'); } function testCheckedRadioButtons() { $form = &new SimpleForm(new SimpleFormTag(array()), $this->page('htp://host')); $form->addWidget(new SimpleRadioButtonTag( array('name' => 'me', 'value' => 'a', 'type' => 'radio'))); $form->addWidget(new SimpleRadioButtonTag( array('name' => 'me', 'value' => 'b', 'type' => 'radio', 'checked' => ''))); $this->assertIdentical($form->getValue(new SimpleByName('me')), 'b'); $this->assertTrue($form->setField(new SimpleByName('me'), 'a')); $this->assertIdentical($form->getValue(new SimpleByName('me')), 'a'); } function testMultipleFieldsWithSameKey() { $form = &new SimpleForm(new SimpleFormTag(array()), $this->page('htp://host')); $form->addWidget(new SimpleCheckboxTag( array('name' => 'a', 'type' => 'checkbox', 'value' => 'me'))); $form->addWidget(new SimpleCheckboxTag( array('name' => 'a', 'type' => 'checkbox', 'value' => 'you'))); $this->assertIdentical($form->getValue(new SimpleByName('a')), false); $this->assertTrue($form->setField(new SimpleByName('a'), 'me')); $this->assertIdentical($form->getValue(new SimpleByName('a')), 'me'); }}?>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?