From fd019bf034ef4dbedfc305c77fed0dbd83a732c4 Mon Sep 17 00:00:00 2001 From: wei <> Date: Tue, 25 Apr 2006 00:27:44 +0000 Subject: Add TListControlValidator. Update client-side validators, datepicker.js, colorpicker.js. Merge to 3.0 if necessary. --- .../features/protected/pages/DatePicker.page | 18 +++--- .../validators/protected/pages/DatePicker.page | 64 ++++++++++++++++++++++ .../validators/protected/pages/Layout.tpl | 5 ++ .../validators/protected/pages/ListControl.page | 58 ++++++++++++++++++++ .../protected/pages/RequiredListValidator.page | 13 +++-- .../validators/tests/DatePickerTestCase.php | 63 +++++++++++++++++++++ .../validators/tests/ListControlTestCase.php | 48 ++++++++++++++++ .../validators/tests/RequiredListTestCase.php | 53 +++++++++--------- 8 files changed, 282 insertions(+), 40 deletions(-) create mode 100644 tests/FunctionalTests/validators/protected/pages/DatePicker.page create mode 100644 tests/FunctionalTests/validators/protected/pages/ListControl.page create mode 100644 tests/FunctionalTests/validators/tests/DatePickerTestCase.php create mode 100644 tests/FunctionalTests/validators/tests/ListControlTestCase.php (limited to 'tests') diff --git a/tests/FunctionalTests/features/protected/pages/DatePicker.page b/tests/FunctionalTests/features/protected/pages/DatePicker.page index 4347f748..261a6994 100644 --- a/tests/FunctionalTests/features/protected/pages/DatePicker.page +++ b/tests/FunctionalTests/features/protected/pages/DatePicker.page @@ -12,45 +12,47 @@ - Button Mode + Button Mode, pre-selected date - + InputMode="DropDownList", custom DateFormat - + InputMode="DropDownList", custom DateFormat, Culture - + - Custom DateFormat, culture, ImageButton mode + Custom DateFormat, culture, ImageButton mode, pre-selected date - + /> Custom DateFormat, DropDownList, pre-selected date set in as Text - + DropDownList, pre-selected date as integer - /> + /> diff --git a/tests/FunctionalTests/validators/protected/pages/DatePicker.page b/tests/FunctionalTests/validators/protected/pages/DatePicker.page new file mode 100644 index 00000000..fdbbbeb1 --- /dev/null +++ b/tests/FunctionalTests/validators/protected/pages/DatePicker.page @@ -0,0 +1,64 @@ + +

Date Picker validation Test

+ + + + +
+ + + + +
+ Date 1: + + +
+ Date 2: + + + +
+ + Date 3: + +
+ Date 4: + + + + +
\ No newline at end of file diff --git a/tests/FunctionalTests/validators/protected/pages/Layout.tpl b/tests/FunctionalTests/validators/protected/pages/Layout.tpl index 224481e1..25dbea09 100644 --- a/tests/FunctionalTests/validators/protected/pages/Layout.tpl +++ b/tests/FunctionalTests/validators/protected/pages/Layout.tpl @@ -21,6 +21,11 @@ margin-top: 2em; display: block; } + .required + { + border: 1px solid red; + background-color: pink; + } /*]]>*/ diff --git a/tests/FunctionalTests/validators/protected/pages/ListControl.page b/tests/FunctionalTests/validators/protected/pages/ListControl.page new file mode 100644 index 00000000..1429e184 --- /dev/null +++ b/tests/FunctionalTests/validators/protected/pages/ListControl.page @@ -0,0 +1,58 @@ + +

List Control Required Field Validation Test

+ + + + + + + + + +
+ + + + + + + + + + +
+ + + + + + + + + + +
+ + + + + + + + + + + +
\ No newline at end of file diff --git a/tests/FunctionalTests/validators/protected/pages/RequiredListValidator.page b/tests/FunctionalTests/validators/protected/pages/RequiredListValidator.page index 9bbd9d5a..665d71b7 100644 --- a/tests/FunctionalTests/validators/protected/pages/RequiredListValidator.page +++ b/tests/FunctionalTests/validators/protected/pages/RequiredListValidator.page @@ -8,7 +8,7 @@ -
- + -
- + - - + open("validators/index.php?page=DatePicker", ""); + $this->verifyTextPresent("Date Picker validation Test", ""); + $this->assertNotVisible("{$base}validator1", ""); + $this->assertNotVisible("{$base}validator2", ""); + $this->assertNotVisible("{$base}validator4", ""); + $this->assertNotVisible("{$base}validator5", ""); + $this->assertNotVisible("{$base}validator6", ""); + $this->assertNotVisible("{$base}validator8", ""); + + $this->click("{$base}submit1"); + $this->assertVisible("{$base}validator1", ""); + $this->assertNotVisible("{$base}validator2", ""); + $this->assertVisible("{$base}validator4", ""); + $this->assertVisible("{$base}validator5", ""); + $this->assertNotVisible("{$base}validator6", ""); + $this->assertVisible("{$base}validator8", ""); + + $this->click("{$base}submit1"); + $this->type("{$base}picker1", "13/4/2006"); + $this->select("{$base}picker2_month", "label=9"); + $this->select("{$base}picker2_day", "label=10"); + $this->type("{$base}picker3", "14/4/2006"); + $this->type("{$base}picker4", "7/4/2006"); + $this->select("{$base}picker5_day", "label=6"); + $this->select("{$base}picker5_month", "label=3"); + $this->select("{$base}picker5_year", "label=2007"); + $this->select("{$base}picker6_month", "label=3"); + $this->select("{$base}picker6_year", "label=2007"); + $this->select("{$base}picker6_day", "label=5"); + + $this->click("{$base}submit1"); + + $this->assertNotVisible("{$base}validator1", ""); + $this->assertVisible("{$base}validator2", ""); + $this->assertNotVisible("{$base}validator4", ""); + $this->assertNotVisible("{$base}validator5", ""); + $this->assertVisible("{$base}validator6", ""); + $this->assertVisible("{$base}validator8", ""); + + $this->type("{$base}picker1", "20/4/2007"); + $this->type("{$base}picker4", "29/4/2006"); + $this->select("{$base}picker6_day", "label=10"); + + $this->clickAndWait("{$base}submit1"); + + $this->assertNotVisible("{$base}validator1", ""); + $this->assertNotVisible("{$base}validator2", ""); + $this->assertNotVisible("{$base}validator4", ""); + $this->assertNotVisible("{$base}validator5", ""); + $this->assertNotVisible("{$base}validator6", ""); + $this->assertNotVisible("{$base}validator8", ""); + } + +} + +?> \ No newline at end of file diff --git a/tests/FunctionalTests/validators/tests/ListControlTestCase.php b/tests/FunctionalTests/validators/tests/ListControlTestCase.php new file mode 100644 index 00000000..6c0c73e7 --- /dev/null +++ b/tests/FunctionalTests/validators/tests/ListControlTestCase.php @@ -0,0 +1,48 @@ +open("validators/index.php?page=ListControl", ""); + $this->verifyTextPresent("List Control Required Field Validation Test", ""); + $this->click("//input[@type='submit' and @value='Submit!']", ""); + + $this->assertVisible("{$base}validator1"); + $this->assertVisible("{$base}validator2"); + $this->assertVisible("{$base}validator3"); + $this->assertVisible("{$base}validator4"); + + $this->click("//input[@id='{$base}list1_1' and @value='Red']", ""); + $this->select("{$base}list2", "label=Red"); + $this->select("{$base}list3", "label=Blue"); + $this->click("{$base}list4_3", ""); + $this->clickAndWait("//input[@type='submit' and @value='Submit!']", ""); + + $this->assertNotVisible("{$base}validator1"); + $this->assertNotVisible("{$base}validator2"); + $this->assertNotVisible("{$base}validator3"); + $this->assertNotVisible("{$base}validator4"); + + $this->select("{$base}list3", "label=Don't select this one"); + $this->click("{$base}list4_0"); + $this->select("{$base}list2", "label=--- Select a color ---"); + $this->click("//input[@type='submit' and @value='Submit!']", ""); + $this->click("//input[@id='{$base}list1_1' and @value='Red']", ""); + $this->click("//input[@id='{$base}list1_0' and @value='Select a color below']", ""); + $this->click("//input[@type='submit' and @value='Submit!']", ""); + + $this->assertVisible("{$base}validator1"); + $this->assertVisible("{$base}validator2"); + $this->assertVisible("{$base}validator3"); + $this->assertVisible("{$base}validator4"); + + } + +} + +?> diff --git a/tests/FunctionalTests/validators/tests/RequiredListTestCase.php b/tests/FunctionalTests/validators/tests/RequiredListTestCase.php index 1eab60d4..ad299dc5 100644 --- a/tests/FunctionalTests/validators/tests/RequiredListTestCase.php +++ b/tests/FunctionalTests/validators/tests/RequiredListTestCase.php @@ -5,35 +5,36 @@ class RequiredListTestCase extends SeleniumTestCase function test() { + $base = "ctl0_Content_"; $this->open("validators/index.php?page=RequiredListValidator"); $this->assertLocation("index.php?page=RequiredListValidator"); - $this->click("submit1"); - $this->assertVisible("validator1"); - $this->assertVisible("validator2"); - $this->assertVisible("validator3"); - $this->click("list1:0"); - $this->select("list2", "label=One"); - $this->select("list2", "label=Two"); - $this->click("list3:3"); - $this->clickAndWait("submit1"); - $this->assertNotVisible("validator1"); - $this->assertNotVisible("validator2"); - $this->assertNotVisible("validator3"); - $this->click("list1:1"); - $this->click("list1:2"); - $this->click("list1:3"); - $this->select("list2", "label=Two"); - $this->click("list1:3"); - $this->click("submit1"); - $this->assertNotVisible("validator1"); - $this->assertNotVisible("validator2"); - $this->assertNotVisible("validator3"); - $this->click("list3:3"); - $this->click("submit1"); + $this->click("{$base}submit1"); + $this->assertVisible("{$base}validator1"); + $this->assertVisible("{$base}validator2"); + $this->assertVisible("{$base}validator3"); + $this->click("{$base}list1_0"); + $this->select("{$base}list2", "label=One"); + $this->select("{$base}list2", "label=Two"); + $this->click("{$base}list3_3"); + $this->clickAndWait("{$base}submit1"); + $this->assertNotVisible("{$base}validator1"); + $this->assertNotVisible("{$base}validator2"); + $this->assertNotVisible("{$base}validator3"); + $this->click("{$base}list1_1"); + $this->click("{$base}list1_2"); + $this->click("{$base}list1_3"); + $this->select("{$base}list2", "label=Two"); + $this->click("{$base}list1_3"); + $this->click("{$base}submit1"); + $this->assertNotVisible("{$base}validator1"); + $this->assertNotVisible("{$base}validator2"); + $this->assertNotVisible("{$base}validator3"); + $this->click("{$base}list3_3"); + $this->click("{$base}submit1"); $this->pause(200); - $this->assertNotVisible("validator1"); - $this->assertNotVisible("validator2"); - $this->assertVisible("validator3"); + $this->assertNotVisible("{$base}validator1"); + $this->assertNotVisible("{$base}validator2"); + $this->assertNotVisible("{$base}validator3"); } } -- cgit v1.2.3