From 5081f7a12bb78b2efabf423fdf940927f7b7c908 Mon Sep 17 00:00:00 2001 From: xue <> Date: Thu, 26 Jan 2006 03:48:55 +0000 Subject: Added TListBox FT. --- .gitattributes | 1 + .../pages/Controls/Samples/TListBox/Home.php | 2 +- .../quickstart_tests/Controls/ListBoxTestCase.php | 83 ++++++++++++++++++++++ 3 files changed, 85 insertions(+), 1 deletion(-) create mode 100644 tests/FunctionalTests/quickstart_tests/Controls/ListBoxTestCase.php diff --git a/.gitattributes b/.gitattributes index 9a90f174..301b2181 100644 --- a/.gitattributes +++ b/.gitattributes @@ -652,6 +652,7 @@ tests/FunctionalTests/quickstart_tests/Controls/ImageButtonTestCase.php -text tests/FunctionalTests/quickstart_tests/Controls/ImageTestCase.php -text tests/FunctionalTests/quickstart_tests/Controls/LabelTestCase.php -text tests/FunctionalTests/quickstart_tests/Controls/LinkButtonTestCase.php -text +tests/FunctionalTests/quickstart_tests/Controls/ListBoxTestCase.php -text tests/FunctionalTests/quickstart_tests/Controls/PanelTestCase.php -text tests/FunctionalTests/quickstart_tests/Controls/RadioButtonTestCase.php -text tests/FunctionalTests/quickstart_tests/Controls/TableTestCase.php -text diff --git a/demos/quickstart/protected/pages/Controls/Samples/TListBox/Home.php b/demos/quickstart/protected/pages/Controls/Samples/TListBox/Home.php index cd9d7c13..a570d38b 100644 --- a/demos/quickstart/protected/pages/Controls/Samples/TListBox/Home.php +++ b/demos/quickstart/protected/pages/Controls/Samples/TListBox/Home.php @@ -47,7 +47,7 @@ class Home extends TPage foreach($indices as $index) { $item=$input->Items[$index]; - $result.="(Index: $index, Value: $item->Value, Text: $item->Text)\n"; + $result.="(Index: $index, Value: $item->Value, Text: $item->Text)"; } if($result==='') $output->Text='Your selection is empty.'; diff --git a/tests/FunctionalTests/quickstart_tests/Controls/ListBoxTestCase.php b/tests/FunctionalTests/quickstart_tests/Controls/ListBoxTestCase.php new file mode 100644 index 00000000..359afb41 --- /dev/null +++ b/tests/FunctionalTests/quickstart_tests/Controls/ListBoxTestCase.php @@ -0,0 +1,83 @@ +open("../../demos/quickstart/index.php?page=Controls.Samples.TListBox.Home&functionaltest=true", ""); + + // a default single selection listbox + $this->verifyAttribute("ctl0\$body\$ctl0@size","4"); + + // single selection list box with initial options + $this->verifySelectOptions("ctl0\$body\$ctl1","item 1,item 2,item 3,item 4"); + $this->verifySelected("ctl0\$body\$ctl1","value=value 2"); + + // a single selection list box with customized style + $this->verifyAttribute("ctl0\$body\$ctl2@size","3"); + $this->verifySelectOptions("ctl0\$body\$ctl2","item 1,item 2,item 3,item 4"); + $this->verifySelected("ctl0\$body\$ctl2","value=value 2"); + + // a disabled list box + $this->verifyAttribute("ctl0\$body\$ctl3@disabled","regexp:true|disabled"); + + // an auto postback single selection list box + $this->verifyTextNotPresent("Your selection is: (Index: 2, Value: value 3, Text: item 3)", ""); + $this->selectAndWait("ctl0\$body\$ctl4", "label=item 3"); + $this->verifyTextPresent("Your selection is: (Index: 2, Value: value 3, Text: item 3)", ""); + + // a single selection list box upon postback + $this->select("ctl0\$body\$ListBox1", "label=item 4"); + $this->verifyTextNotPresent("Your selection is: (Index: 3, Value: value 4, Text: item 4)", ""); + $this->clickAndWait("//input[@type='submit' and @value='Submit']", ""); + $this->verifyTextPresent("Your selection is: (Index: 3, Value: value 4, Text: item 4)", ""); + + // a multiple selection list box + $this->verifyAttribute("ctl0\$body\$ctl6[]@size","4"); + $this->verifyAttribute("ctl0\$body\$ctl6[]@multiple","regexp:true|multiple"); + + // a multiple selection list box with initial options + $this->verifyAttribute("ctl0\$body\$ctl7[]@multiple","regexp:true|multiple"); + $this->verifySelectOptions("ctl0\$body\$ctl7[]","item 1,item 2,item 3,item 4"); + + // multiselection list box's behavior upon postback + $this->select("ctl0\$body\$ListBox2[]", "label=item 3"); + $this->clickAndWait("name=ctl0\$body\$ctl8", ""); + $this->verifyText("ctl0_body_MultiSelectionResult2","Your selection is: (Index: 1, Value: value 2, Text: item 2)(Index: 2, Value: value 3, Text: item 3)(Index: 3, Value: value 4, Text: item 4)"); + + // Auto postback multiselection list box + $this->selectAndWait("ctl0\$body\$ctl9[]", "label=item 1"); + $this->verifyText("ctl0_body_MultiSelectionResult","Your selection is: (Index: 0, Value: value 1, Text: item 1)(Index: 1, Value: value 2, Text: item 2)(Index: 3, Value: value 4, Text: item 4)"); + + // Databind to an integer-indexed array + $this->selectAndWait("ctl0\$body\$DBListBox1[]", "label=item 3"); + $this->verifyTextPresent("Your selection is: (Index: 2, Value: item 3, Text: item 3)", ""); + + // Databind to an associative array + $this->selectAndWait("ctl0\$body\$DBListBox2[]", "label=item 2"); + $this->verifyTextPresent("Your selection is: (Index: 1, Value: key 2, Text: item 2)", ""); + + // Databind with DataTextField and DataValueField specified + $this->selectAndWait("ctl0\$body\$DBListBox3[]", "label=Cary"); + $this->verifyTextPresent("Your selection is: (Index: 2, Value: 003, Text: Cary)", ""); + + // List box is being validated + $this->verifyNotVisible('ctl0_body_ctl10'); + $this->click("id=ctl0_body_ctl11", ""); + $this->verifyVisible('ctl0_body_ctl10'); + $this->select("ctl0\$body\$VListBox1", "label=item 2"); + $this->clickAndWait("id=ctl0_body_ctl11", ""); + $this->verifyNotVisible('ctl0_body_ctl10'); + + // List box causing validation + $this->verifyNotVisible('ctl0_body_ctl12'); + $this->select("ctl0\$body\$VListBox2", "label=Agree"); + $this->verifyVisible('ctl0_body_ctl12'); + $this->type("ctl0\$body\$TextBox", "test"); + $this->selectAndWait("ctl0\$body\$VListBox2", "label=Disagree"); + $this->verifyNotVisible('ctl0_body_ctl12'); + } +} + +?> \ No newline at end of file -- cgit v1.2.3