From 6228873cf9d6471463d2413e7dfd7447f759baf2 Mon Sep 17 00:00:00 2001
From: "christophe.boulain" <>
Date: Wed, 3 Dec 2008 14:22:03 +0000
Subject: Merge from trunk
---
.../protected/pages/ActiveDatePicker.page | 17 ++
.../protected/pages/ActiveDatePicker.php | 42 ++++
.../pages/ActiveRatingListAllowInputTest.page | 14 ++
.../pages/ActiveRatingListAllowInputTest.php | 27 +++
.../pages/ActiveRatingListAutoPostBackTest.page | 16 ++
.../pages/ActiveRatingListAutoPostBackTest.php | 27 +++
.../pages/ActiveRatingListCheckBoxesTest.page | 12 +
.../pages/ActiveRatingListCheckBoxesTest.php | 23 ++
.../pages/ActiveRatingListEnabledTest.page | 17 ++
.../pages/ActiveRatingListEnabledTest.php | 37 +++
.../pages/ActiveRatingListHoverCaptionTest.page | 14 ++
.../pages/ActiveRatingListHoverCaptionTest.php | 27 +++
.../pages/ActiveRatingListRatingTest.page | 17 ++
.../protected/pages/ActiveRatingListRatingTest.php | 32 +++
.../pages/ActiveRatingListReadOnlyTest.page | 17 ++
.../pages/ActiveRatingListReadOnlyTest.php | 38 ++++
.../pages/ActiveRatingListSelectedIndexTest.page | 17 ++
.../pages/ActiveRatingListSelectedIndexTest.php | 32 +++
.../protected/pages/RatingList.page | 13 +-
.../tests/ActiveDatePickerTestCase.php | 97 ++++++++
.../ActiveRatingListTestCase.php | 253 +++++++++++++++++++++
.../tickets/protected/application.xml | 3 +-
.../tickets/protected/pages/Ticket284Component.php | 11 +-
.../tickets/protected/pages/Ticket900.page | 45 ++++
.../tickets/protected/pages/Ticket900.php | 58 +++++
.../tickets/protected/pages/Ticket922.page | 12 +
.../tickets/protected/pages/Ticket922.php | 13 ++
.../tickets/protected/pages/Ticket925.page | 11 +
.../tickets/protected/pages/Ticket925.php | 76 +++++++
.../tickets/tests/Ticket595TestCase.php | 4 +-
.../tickets/tests/Ticket900TestCase.php | 19 ++
.../tickets/tests/Ticket922TestCase.php | 18 ++
32 files changed, 1043 insertions(+), 16 deletions(-)
create mode 100755 tests/FunctionalTests/active-controls/protected/pages/ActiveDatePicker.page
create mode 100755 tests/FunctionalTests/active-controls/protected/pages/ActiveDatePicker.php
create mode 100644 tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListAllowInputTest.page
create mode 100644 tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListAllowInputTest.php
create mode 100644 tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListAutoPostBackTest.page
create mode 100644 tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListAutoPostBackTest.php
create mode 100644 tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListCheckBoxesTest.page
create mode 100644 tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListCheckBoxesTest.php
create mode 100644 tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListEnabledTest.page
create mode 100644 tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListEnabledTest.php
create mode 100644 tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListHoverCaptionTest.page
create mode 100644 tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListHoverCaptionTest.php
create mode 100644 tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListRatingTest.page
create mode 100644 tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListRatingTest.php
create mode 100644 tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListReadOnlyTest.page
create mode 100644 tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListReadOnlyTest.php
create mode 100644 tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListSelectedIndexTest.page
create mode 100644 tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListSelectedIndexTest.php
create mode 100755 tests/FunctionalTests/active-controls/tests/ActiveDatePickerTestCase.php
create mode 100644 tests/FunctionalTests/active-controlstests/ActiveRatingListTestCase.php
create mode 100644 tests/FunctionalTests/tickets/protected/pages/Ticket900.page
create mode 100644 tests/FunctionalTests/tickets/protected/pages/Ticket900.php
create mode 100644 tests/FunctionalTests/tickets/protected/pages/Ticket922.page
create mode 100644 tests/FunctionalTests/tickets/protected/pages/Ticket922.php
create mode 100755 tests/FunctionalTests/tickets/protected/pages/Ticket925.page
create mode 100755 tests/FunctionalTests/tickets/protected/pages/Ticket925.php
create mode 100644 tests/FunctionalTests/tickets/tests/Ticket900TestCase.php
create mode 100644 tests/FunctionalTests/tickets/tests/Ticket922TestCase.php
(limited to 'tests/FunctionalTests')
diff --git a/tests/FunctionalTests/active-controls/protected/pages/ActiveDatePicker.page b/tests/FunctionalTests/active-controls/protected/pages/ActiveDatePicker.page
new file mode 100755
index 00000000..ed35293e
--- /dev/null
+++ b/tests/FunctionalTests/active-controls/protected/pages/ActiveDatePicker.page
@@ -0,0 +1,17 @@
+
+
+
+
+TActiveDatePicker test
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/tests/FunctionalTests/active-controls/protected/pages/ActiveDatePicker.php b/tests/FunctionalTests/active-controls/protected/pages/ActiveDatePicker.php
new file mode 100755
index 00000000..6d78a664
--- /dev/null
+++ b/tests/FunctionalTests/active-controls/protected/pages/ActiveDatePicker.php
@@ -0,0 +1,42 @@
+IsPostBack)
+ $this->datepicker->setTimeStamp(time());
+ }
+
+ public function testDatePicker($sender, $param){
+ $this->status->Text = $this->datepicker->getText();
+ }
+
+ public function today ($sender, $param)
+ {
+ $this->datepicker->setTimestamp(time());
+ }
+
+ public function increase ($sender, $param)
+ {
+ $this->datepicker->setTimestamp(strtotime('+1 day', $this->datepicker->getTimestamp()));
+ }
+ public function decrease ($sender, $param)
+ {
+ $this->datepicker->setTimestamp(strtotime('-1 day', $this->datepicker->getTimestamp()));
+ }
+
+ public function toggleMode ($sender, $param)
+ {
+ if ($this->datepicker->getInputMode()==TDatePickerInputMode::DropDownList)
+ $this->datepicker->setInputMode(TDatePickerInputMode::TextBox);
+ else
+ $this->datepicker->setInputMode(TDatePickerInputMode::DropDownList);
+ }
+
+ }
+
+
+?>
\ No newline at end of file
diff --git a/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListAllowInputTest.page b/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListAllowInputTest.page
new file mode 100644
index 00000000..35fcadc7
--- /dev/null
+++ b/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListAllowInputTest.page
@@ -0,0 +1,14 @@
+
+
+ TActiveRatingList AllowInput Test Case
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListAllowInputTest.php b/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListAllowInputTest.php
new file mode 100644
index 00000000..c825f3f8
--- /dev/null
+++ b/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListAllowInputTest.php
@@ -0,0 +1,27 @@
+
+ * @version Creation Date: Oct 13, 2008
+ */
+
+/**
+ * TRatingListTest.php class
+ *
+ *
+ *
+ * Properties
+ * -
+ *
+ * @author Bradley Booms
+ * @version Modified Date: Oct 13, 2008
+ *
+ * Modifications:
+ */
+class ActiveRatingListAllowInputTest extends TPage{
+ public function ratingChanged($sender, $param){
+ $this->Status->setText($sender->getRating().' : '.$sender->getSelectedValue());
+ }
+}
+?>
\ No newline at end of file
diff --git a/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListAutoPostBackTest.page b/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListAutoPostBackTest.page
new file mode 100644
index 00000000..84ce4ef3
--- /dev/null
+++ b/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListAutoPostBackTest.page
@@ -0,0 +1,16 @@
+
+
+ TActiveRatingList AutoPostBack Test Case
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListAutoPostBackTest.php b/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListAutoPostBackTest.php
new file mode 100644
index 00000000..4b087b76
--- /dev/null
+++ b/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListAutoPostBackTest.php
@@ -0,0 +1,27 @@
+
+ * @version Creation Date: Oct 13, 2008
+ */
+
+/**
+ * TRatingListTest.php class
+ *
+ *
+ *
+ * Properties
+ * -
+ *
+ * @author Bradley Booms
+ * @version Modified Date: Oct 13, 2008
+ *
+ * Modifications:
+ */
+class ActiveRatingListAutoPostBackTest extends TPage{
+ public function ratingChanged($sender, $param){
+ $this->Status->setText($sender->getRating().' : '.$sender->getSelectedValue());
+ }
+}
+?>
\ No newline at end of file
diff --git a/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListCheckBoxesTest.page b/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListCheckBoxesTest.page
new file mode 100644
index 00000000..36f4404d
--- /dev/null
+++ b/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListCheckBoxesTest.page
@@ -0,0 +1,12 @@
+
+
+ TActiveRatingList Check Boxes Test Case
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListCheckBoxesTest.php b/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListCheckBoxesTest.php
new file mode 100644
index 00000000..5c6dfa70
--- /dev/null
+++ b/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListCheckBoxesTest.php
@@ -0,0 +1,23 @@
+
+ * @version Creation Date: Oct 13, 2008
+ */
+
+/**
+ * TRatingListTest.php class
+ *
+ *
+ *
+ * Properties
+ * -
+ *
+ * @author Bradley Booms
+ * @version Modified Date: Oct 13, 2008
+ *
+ * Modifications:
+ */
+class ActiveRatingListCheckBoxesTest extends TPage{ }
+?>
\ No newline at end of file
diff --git a/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListEnabledTest.page b/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListEnabledTest.page
new file mode 100644
index 00000000..5f732e0d
--- /dev/null
+++ b/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListEnabledTest.page
@@ -0,0 +1,17 @@
+
+
+ TActiveRatingList Enabled Test Case
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListEnabledTest.php b/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListEnabledTest.php
new file mode 100644
index 00000000..0cac7418
--- /dev/null
+++ b/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListEnabledTest.php
@@ -0,0 +1,37 @@
+
+ * @version Creation Date: Oct 13, 2008
+ */
+
+/**
+ * TRatingListTest.php class
+ *
+ *
+ *
+ * Properties
+ * -
+ *
+ * @author Bradley Booms
+ * @version Modified Date: Oct 13, 2008
+ *
+ * Modifications:
+ */
+class ActiveRatingListEnabledTest extends TPage{
+ public function ratingChanged($sender, $param){
+ $this->Status->setText($sender->getRating().' : '.$sender->getSelectedValue());
+ }
+
+ public function enable($sender, $param){
+ $this->RatingList->setEnabled(true);
+ $this->Status->setText('Enabled=true');
+ }
+
+ public function disable($sender, $param){
+ $this->RatingList->setEnabled(false);
+ $this->Status->setText('Enabled=false');
+ }
+}
+?>
\ No newline at end of file
diff --git a/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListHoverCaptionTest.page b/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListHoverCaptionTest.page
new file mode 100644
index 00000000..01e47a34
--- /dev/null
+++ b/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListHoverCaptionTest.page
@@ -0,0 +1,14 @@
+
+
+ TActiveRatingList Hover Caption Test Case
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListHoverCaptionTest.php b/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListHoverCaptionTest.php
new file mode 100644
index 00000000..06d82d39
--- /dev/null
+++ b/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListHoverCaptionTest.php
@@ -0,0 +1,27 @@
+
+ * @version Creation Date: Oct 13, 2008
+ */
+
+/**
+ * TRatingListTest.php class
+ *
+ *
+ *
+ * Properties
+ * -
+ *
+ * @author Bradley Booms
+ * @version Modified Date: Oct 13, 2008
+ *
+ * Modifications:
+ */
+class ActiveRatingListHoverCaptionTest extends TPage{
+ public function ratingChanged($sender, $param){
+ $sender->setCaption($sender->getRating().' : '.$sender->getSelectedValue());
+ }
+}
+?>
\ No newline at end of file
diff --git a/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListRatingTest.page b/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListRatingTest.page
new file mode 100644
index 00000000..942a5b45
--- /dev/null
+++ b/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListRatingTest.page
@@ -0,0 +1,17 @@
+
+
+ TActiveRatingList Rating Test Case
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListRatingTest.php b/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListRatingTest.php
new file mode 100644
index 00000000..fe5c8404
--- /dev/null
+++ b/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListRatingTest.php
@@ -0,0 +1,32 @@
+
+ * @version Creation Date: Oct 13, 2008
+ */
+
+/**
+ * TRatingListTest.php class
+ *
+ *
+ *
+ * Properties
+ * -
+ *
+ * @author Bradley Booms
+ * @version Modified Date: Oct 13, 2008
+ *
+ * Modifications:
+ */
+class ActiveRatingListRatingTest extends TPage{
+ public function ratingChanged($sender, $param){
+ $this->Status->setText('Rating: '.$sender->getRating());
+ }
+
+ public function setRating($sender, $param){
+ $this->RatingList->setRating(3);
+ $this->ratingChanged($this->RatingList, null);
+ }
+}
+?>
\ No newline at end of file
diff --git a/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListReadOnlyTest.page b/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListReadOnlyTest.page
new file mode 100644
index 00000000..dad3fd6e
--- /dev/null
+++ b/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListReadOnlyTest.page
@@ -0,0 +1,17 @@
+
+
+ TActiveRatingList ReadOnly Test Case
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListReadOnlyTest.php b/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListReadOnlyTest.php
new file mode 100644
index 00000000..070fd13f
--- /dev/null
+++ b/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListReadOnlyTest.php
@@ -0,0 +1,38 @@
+
+ * @version Creation Date: Oct 13, 2008
+ */
+
+/**
+ * TRatingListTest.php class
+ *
+ *
+ *
+ * Properties
+ * -
+ *
+ * @author Bradley Booms
+ * @version Modified Date: Oct 13, 2008
+ *
+ * Modifications:
+ */
+class ActiveRatingListReadOnlyTest extends TPage{
+ public function ratingChanged($sender, $param){
+ $this->Status->setText($sender->getRating().' : '.$sender->getSelectedValue());
+ }
+
+ public function readOnly($sender, $param){
+ $this->RatingList->setReadOnly(true);
+ $this->Status->setText('ReadOnly=true');
+ }
+
+ public function writable($sender, $param){
+ $this->RatingList->setReadOnly(false);
+ $this->Status->setText('ReadOnly=false');
+ }
+
+}
+?>
\ No newline at end of file
diff --git a/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListSelectedIndexTest.page b/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListSelectedIndexTest.page
new file mode 100644
index 00000000..6fb52822
--- /dev/null
+++ b/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListSelectedIndexTest.page
@@ -0,0 +1,17 @@
+
+
+ TActiveRatingList SelectedIndex Test Case
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListSelectedIndexTest.php b/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListSelectedIndexTest.php
new file mode 100644
index 00000000..4dbc6949
--- /dev/null
+++ b/tests/FunctionalTests/active-controls/protected/pages/ActiveRatingListSelectedIndexTest.php
@@ -0,0 +1,32 @@
+
+ * @version Creation Date: Oct 13, 2008
+ */
+
+/**
+ * TRatingListTest.php class
+ *
+ *
+ *
+ * Properties
+ * -
+ *
+ * @author Bradley Booms
+ * @version Modified Date: Oct 13, 2008
+ *
+ * Modifications:
+ */
+class ActiveRatingListSelectedIndexTest extends TPage{
+ public function ratingChanged($sender, $param){
+ $this->Status->setText('SelectedIndex: '.$sender->getSelectedIndex());
+ }
+
+ public function setSelectedIndex($sender, $param){
+ $this->RatingList->setSelectedIndex(5);
+ $this->ratingChanged($this->RatingList, null);
+ }
+}
+?>
\ No newline at end of file
diff --git a/tests/FunctionalTests/active-controls/protected/pages/RatingList.page b/tests/FunctionalTests/active-controls/protected/pages/RatingList.page
index f9be4aee..ba9c2e5d 100644
--- a/tests/FunctionalTests/active-controls/protected/pages/RatingList.page
+++ b/tests/FunctionalTests/active-controls/protected/pages/RatingList.page
@@ -3,22 +3,11 @@
diff --git a/tests/FunctionalTests/active-controls/tests/ActiveDatePickerTestCase.php b/tests/FunctionalTests/active-controls/tests/ActiveDatePickerTestCase.php
new file mode 100755
index 00000000..b8e9594e
--- /dev/null
+++ b/tests/FunctionalTests/active-controls/tests/ActiveDatePickerTestCase.php
@@ -0,0 +1,97 @@
+open("active-controls/index.php?page=ActiveDatePicker");
+ $this->verifyTextPresent("TActiveDatePicker test");
+ $this->verifyText("status", "");
+ $this->verifyValue("datepicker", date('m-d-Y'));
+ $this->click("increaseButton");
+ $this->pause(800);
+ $this->verifyValue("datepicker", date('m-d-Y', strtotime('+ 1 day')));
+ $this->verifyText("status", date('m-d-Y', strtotime('+ 1 day')));
+ $this->click("increaseButton");
+ $this->pause(800);
+ $this->verifyValue("datepicker", date('m-d-Y', strtotime('+ 2 day')));
+ $this->verifyText("status", date('m-d-Y', strtotime('+ 2 day')));
+ $this->click("todayButton");
+ $this->pause(800);
+ $this->verifyValue("datepicker", date('m-d-Y'));
+ $this->verifyText("status", date('m-d-Y'));
+ $this->click("decreaseButton");
+ $this->pause(800);
+ $this->verifyValue("datepicker", date('m-d-Y', strtotime('- 1 day')));
+ $this->verifyText("status", date('m-d-Y', strtotime('- 1 day')));
+ $this->click("datepicker");
+ $this->pause(800);
+ $this->click("css=input.todayButton");
+ $this->pause(800);
+ $this->verifyValue("datepicker", date('m-d-Y'));
+ $this->verifyText("status", date('m-d-Y'));
+ $this->click("css=input.nextMonthButton");
+ $this->pause(800);
+ $this->verifyValue("datepicker", date('m-d-Y', strtotime('+ 1 month')));
+ $this->verifyText("status", date('m-d-Y', strtotime('+1 month')));
+
+ $this->click('toggleButton');
+ $this->pause(1000);
+
+ $this->click("todayButton");
+ $this->pause(800);
+ $this->verifySelected("datepicker_month", date('m'));
+ $this->verifyText("status", date('m-d-Y'));
+
+ $this->click("increaseButton");
+ $this->pause(800);
+ $dateToCheck=strtotime('+ 1 day');
+ $this->verifySelected("datepicker_month", date('m', $dateToCheck));
+ $this->verifySelected("datepicker_day", date('d', $dateToCheck));
+ $this->verifySelected("datepicker_year", date('Y', $dateToCheck));
+ $this->verifyText("status", date('m-d-Y', $dateToCheck));
+
+ $this->click("increaseButton");
+ $this->pause(800);
+ $dateToCheck=strtotime('+ 2 day');
+ $this->verifySelected("datepicker_month", date('m', $dateToCheck));
+ $this->verifySelected("datepicker_day", date('d', $dateToCheck));
+ $this->verifySelected("datepicker_year", date('Y', $dateToCheck));
+ $this->verifyText("status", date('m-d-Y', $dateToCheck));
+
+ $this->click("todayButton");
+ $this->pause(800);
+ $dateToCheck=time();
+ $this->verifySelected("datepicker_month", date('m', $dateToCheck));
+ $this->verifySelected("datepicker_day", date('d', $dateToCheck));
+ $this->verifySelected("datepicker_year", date('Y', $dateToCheck));
+ $this->verifyText("status", date('m-d-Y', $dateToCheck));
+
+ $this->click("decreaseButton");
+ $this->pause(800);
+ $dateToCheck=strtotime('- 1 day');
+ $this->verifySelected("datepicker_month", date('m', $dateToCheck));
+ $this->verifySelected("datepicker_day", date('d', $dateToCheck));
+ $this->verifySelected("datepicker_year", date('Y', $dateToCheck));
+ $this->verifyText("status", date('m-d-Y', $dateToCheck));
+
+ $this->click("datepickerbutton");
+ $this->pause(800);
+ $this->click("css=input.todayButton");
+ $this->pause(800);
+ $dateToCheck=time();
+ $this->verifySelected("datepicker_month", date('m', $dateToCheck));
+ $this->verifySelected("datepicker_day", date('d', $dateToCheck));
+ $this->verifySelected("datepicker_year", date('Y', $dateToCheck));
+ $this->verifyText("status", date('m-d-Y', $dateToCheck));
+
+ $this->click("css=input.nextMonthButton");
+ $this->pause(800);
+ $dateToCheck=strtotime('+ 1 month');
+ $this->verifySelected("datepicker_month", date('m', $dateToCheck));
+ $this->verifySelected("datepicker_day", date('d', $dateToCheck));
+ $this->verifySelected("datepicker_year", date('Y', $dateToCheck));
+ $this->verifyText("status", date('m-d-Y', $dateToCheck));
+ }
+}
+
+?>
\ No newline at end of file
diff --git a/tests/FunctionalTests/active-controlstests/ActiveRatingListTestCase.php b/tests/FunctionalTests/active-controlstests/ActiveRatingListTestCase.php
new file mode 100644
index 00000000..c6dc50c2
--- /dev/null
+++ b/tests/FunctionalTests/active-controlstests/ActiveRatingListTestCase.php
@@ -0,0 +1,253 @@
+
+ * @version Creation Date: Oct 22, 2008
+ */
+
+/**
+ * ActiveRatingListTestCase.php class
+ *
+ *
+ *
+ * Properties
+ * -
+ *
+ * @author Bradley Booms
+ * @version Modified Date: Oct 22, 2008
+ *
+ * Modifications:
+ */
+class ActiveRatingListTestCase extends SeleniumTestCase
+{
+ function testCheckBoxes()
+ {
+ // Verify we're on the right page.
+ $this->open("active-controls/index.php?page=ActiveRatingListCheckBoxesTest");
+ $this->verifyTextPresent("TActiveRatingList Check Boxes Test Case");
+ $this->assertCheckBoxes("RatingList", array(2), 6);
+
+ // Change the list and make sure the radio buttons get updated properly.
+ $this->clickTD("RatingList_c4");
+ $this->pause(800);
+ $this->assertCheckBoxes("RatingList", array(4), 6);
+
+ $this->clickTD("RatingList_c2");
+ $this->pause(800);
+ $this->assertCheckBoxes("RatingList", array(2), 6);
+ }
+
+ function testRating()
+ {
+ // Verify we're on the right page.
+ $this->open("active-controls/index.php?page=ActiveRatingListRatingTest");
+ $this->verifyTextPresent("TActiveRatingList Rating Test Case");
+
+ // Check the list, make sure it starts out with 5 stars.
+ $this->assertText("Status", "Rating: 5");
+
+ // Click on 1 star and make sure the Rating property updates.
+ $this->clickTD("RatingList_c0");
+ $this->pause(800);
+ $this->assertText("Status", "Rating: 1");
+
+ // Then set Rating to three on the server side and make sure it's correct.
+ $this->click("SetRating");
+ $this->pause(800);
+ $this->assertText("Status", "Rating: 3");
+ }
+
+ function testSelectedIndex()
+ {
+ // Verify we're on the right page.
+ $this->open("active-controls/index.php?page=ActiveRatingListSelectedIndexTest");
+ $this->verifyTextPresent("TActiveRatingList SelectedIndex Test Case");
+ $this->assertText("Status", " SelectedIndex: 1");
+
+ // Click on 5 stars and make sure the SelectedIndex property updates.
+ $this->clickTD("RatingList_c4");
+ $this->pause(800);
+ $this->assertText("Status", " SelectedIndex: 4");
+
+ // Then set SelectedIndex to 5 on the server side and make sure it's correct.
+ $this->click("SetSelectedIndex");
+ $this->pause(800);
+ $this->assertText("Status", " SelectedIndex: 5");
+ }
+
+ function testAutoPostBack()
+ {
+ // Verify we're on the right page.
+ $this->open("active-controls/index.php?page=ActiveRatingListAutoPostBackTest");
+ $this->verifyTextPresent("TActiveRatingList AutoPostBack Test Case");
+ $this->assertText("Status", "AutoPostback=false");
+
+ // Make sure that it doesn't auto post when clicked.
+ $this->clickTD("RatingList_c3");
+ $this->pause(800);
+ $this->assertText("Status", "AutoPostback=false");
+
+ // Then submit with an active button and make sure it updates.
+ $this->click("Submit");
+ $this->pause(800);
+ $this->assertText("Status", "4 : Good");
+ }
+
+ function testAllowInput()
+ {
+ // Verify we're on the right page.
+ $this->open("active-controls/index.php?page=ActiveRatingListAllowInputTest");
+ $this->verifyTextPresent("TActiveRatingList AllowInput Test Case");
+ $this->assertText("Status", "AllowInput=false");
+ $this->assertCheckBoxes("RatingList", array(3), 6);
+
+ // Make sure that clicking doesn't change anything.
+ $this->clickTD("RatingList_c5");
+ $this->pause(800);
+ $this->assertText("Status", "AllowInput=false");
+ $this->assertCheckBoxes("RatingList", array(3), 6);
+ }
+
+ function testReadOnly()
+ {
+ // Verify we're on the right page.
+ $this->open("active-controls/index.php?page=ActiveRatingListReadOnlyTest");
+ $this->verifyTextPresent("TActiveRatingList ReadOnly Test Case");
+ $this->assertText("Status", "ReadOnly=true");
+ $this->assertCheckBoxes("RatingList", array(0), 6);
+
+ $this->clickTD("RatingList_c4");
+ $this->pause(800);
+ $this->assertText("Status", "ReadOnly=true");
+ $this->assertCheckBoxes("RatingList", array(0), 6);
+
+ // Then set ReadOnly to false, and make sure it works.
+ $this->click("Writable");
+ $this->pause(800);
+ $this->assertText("Status", "ReadOnly=false");
+ $this->assertCheckBoxes("RatingList", array(0), 6);
+
+
+ $this->clickTD("RatingList_c1");
+ $this->pause(800);
+ $this->assertText("Status", "2 : Fair");
+ $this->assertCheckBoxes("RatingList", array(1), 6);
+
+ // Then set ReadOnly to true, and make sure it doesn't work anymore.
+ $this->click("ReadOnly");
+ $this->pause(800);
+ $this->assertText("Status", "ReadOnly=true");
+ $this->assertCheckBoxes("RatingList", array(1), 6);
+
+
+ $this->clickTD("RatingList_c2");
+ $this->pause(800);
+ $this->assertText("Status", "ReadOnly=true");
+ $this->assertCheckBoxes("RatingList", array(1), 6);
+ }
+
+ function testEnabled()
+ {
+ // Verify we're on the right page.
+ $this->open("active-controls/index.php?page=ActiveRatingListEnabledTest");
+ $this->verifyTextPresent("TActiveRatingList Enabled Test Case");
+ $this->assertText("Status", "Enabled=false");
+ $this->assertCheckBoxes("RatingList", array(5), 6);
+
+ $this->clickTD("RatingList_c4");
+ $this->pause(800);
+ $this->assertText("Status", "Enabled=false");
+ $this->assertCheckBoxes("RatingList", array(5), 6);
+
+ // Then set Enable to true, and make sure it works.
+ $this->click("Enable");
+ $this->pause(800);
+ $this->assertText("Status", "Enabled=true");
+ $this->assertCheckBoxes("RatingList", array(5), 6);
+
+
+ $this->clickTD("RatingList_c3");
+ $this->pause(800);
+ $this->assertText("Status", "4 : Good");
+ $this->assertCheckBoxes("RatingList", array(3), 6);
+
+ // Then set Enable to false, and make sure it doesn't work anymore.
+ $this->click("Disable");
+ $this->pause(800);
+ $this->assertText("Status", "Enabled=false");
+ $this->assertCheckBoxes("RatingList", array(3), 6);
+
+
+ $this->clickTD("RatingList_c5");
+ $this->pause(800);
+ $this->assertText("Status", "Enabled=false");
+ $this->assertCheckBoxes("RatingList", array(3), 6);
+ }
+
+ function testHoverCaption()
+ {
+ // Verify we're on the right page.
+ $this->open("active-controls/index.php?page=ActiveRatingListHoverCaptionTest");
+ $this->verifyTextPresent("TActiveRatingList Hover Caption Test Case");
+ $this->assertText("Status", "CaptionID='Status'");
+ $this->assertElementPresent("//input[@id='RatingList_c0']/../..[contains(@class, 'rating_selected')]");
+ $this->assertElementPresent("//input[@id='RatingList_c1']/../..[contains(@class, 'rating_selected')]");
+ $this->assertElementPresent("//input[@id='RatingList_c2']/../..[contains(@class, 'rating_selected')]");
+ $this->assertElementPresent("//input[@id='RatingList_c3']/../..[contains(@class, 'rating_half')]");
+ $this->assertElementPresent("//input[@id='RatingList_c3']/../..[contains(@class, 'rating')]");
+ $this->assertElementPresent("//input[@id='RatingList_c4']/../..[contains(@class, 'rating')]");
+ $this->assertElementPresent("//input[@id='RatingList_c5']/../..[contains(@class, 'rating')]");
+
+ $this->mouseOver("//input[@id='RatingList_c4']/../../");
+ $this->assertText("Status", "Excellent");
+ $this->assertElementPresent("//input[@id='RatingList_c0']/../..[contains(@class, 'rating_hover')]");
+ $this->assertElementPresent("//input[@id='RatingList_c1']/../..[contains(@class, 'rating_hover')]");
+ $this->assertElementPresent("//input[@id='RatingList_c2']/../..[contains(@class, 'rating_hover')]");
+ $this->assertElementPresent("//input[@id='RatingList_c3']/../..[contains(@class, 'rating_hover')]");
+ $this->assertElementPresent("//input[@id='RatingList_c4']/../..[contains(@class, 'rating_hover')]");
+ $this->assertElementNotPresent("//input[@id='RatingList_c5']/../..[contains(@class, 'rating_hover')]");
+ $this->assertElementPresent("//input[@id='RatingList_c5']/../..[contains(@class, 'rating')]");
+
+ $this->mouseOut("//input[@id='RatingList_c4']/../../");
+ $this->assertText("Status", "CaptionID='Status'");
+ $this->assertElementPresent("//input[@id='RatingList_c0']/../..[contains(@class, 'rating_selected')]");
+ $this->assertElementPresent("//input[@id='RatingList_c1']/../..[contains(@class, 'rating_selected')]");
+ $this->assertElementPresent("//input[@id='RatingList_c2']/../..[contains(@class, 'rating_selected')]");
+ $this->assertElementNotPresent("//input[@id='RatingList_c3']/../..[contains(@class, 'rating_selected')]");
+ $this->assertElementPresent("//input[@id='RatingList_c3']/../..[contains(@class, 'rating')]");
+ $this->assertElementPresent("//input[@id='RatingList_c4']/../..[contains(@class, 'rating')]");
+ $this->assertElementPresent("//input[@id='RatingList_c5']/../..[contains(@class, 'rating')]");
+
+
+ $this->mouseOver("//input[@id='RatingList_c1']/../../");
+ $this->assertText("Status", "Fair");
+
+ $this->click("//input[@id='RatingList_c1']/../../");
+ $this->pause(800);
+ $this->assertText("Status", "2 : Fair");
+ $this->assertElementPresent("//input[@id='RatingList_c0']/../..[contains(@class, 'rating_selected')]");
+ $this->assertElementPresent("//input[@id='RatingList_c1']/../..[contains(@class, 'rating_selected')]");
+ $this->assertElementNotPresent("//input[@id='RatingList_c2']/../..[contains(@class, 'rating_selected')]");
+ $this->assertElementPresent("//input[@id='RatingList_c2']/../..[contains(@class, 'rating')]");
+ $this->assertElementPresent("//input[@id='RatingList_c3']/../..[contains(@class, 'rating')]");
+ $this->assertElementPresent("//input[@id='RatingList_c4']/../..[contains(@class, 'rating')]");
+ $this->assertElementPresent("//input[@id='RatingList_c5']/../..[contains(@class, 'rating')]");
+ }
+
+ function clickTD($clientID){
+ $this->click("//input[@id='{$clientID}']/../..");
+ }
+
+ function assertCheckBoxes($clientID, $checks, $total = 5)
+ {
+ for($i = 0; $i < $total; $i++)
+ {
+ if(in_array($i, $checks))
+ $this->assertChecked("{$clientID}_c{$i}");
+ else
+ $this->assertNotChecked("{$clientID}_c{$i}");
+ }
+ }
+}
+?>
\ No newline at end of file
diff --git a/tests/FunctionalTests/tickets/protected/application.xml b/tests/FunctionalTests/tickets/protected/application.xml
index 29273a2f..113b8455 100644
--- a/tests/FunctionalTests/tickets/protected/application.xml
+++ b/tests/FunctionalTests/tickets/protected/application.xml
@@ -1,8 +1,9 @@
-
+
+
diff --git a/tests/FunctionalTests/tickets/protected/pages/Ticket284Component.php b/tests/FunctionalTests/tickets/protected/pages/Ticket284Component.php
index 892bdc87..da6ad153 100644
--- a/tests/FunctionalTests/tickets/protected/pages/Ticket284Component.php
+++ b/tests/FunctionalTests/tickets/protected/pages/Ticket284Component.php
@@ -2,6 +2,7 @@
class Ticket284Component extends TTemplateControl implements IValidatable
{
+ private $_isValid;
public function onPreRender($param)
{
if (!$this->ShowHours && $this->ShowMinutes)
@@ -90,5 +91,13 @@ class Ticket284Component extends TTemplateControl implements IValidatable
return $this->TimeStamp;
}
}
+ public function getIsValid()
+ {
+ return $this->_isValid;
+ }
+ public function setIsValid($value)
+ {
+ $this->_isValid=TPropertyValue::ensureBoolean($value);
+ }
}
-?>
\ No newline at end of file
+?>
diff --git a/tests/FunctionalTests/tickets/protected/pages/Ticket900.page b/tests/FunctionalTests/tickets/protected/pages/Ticket900.page
new file mode 100644
index 00000000..41c0fbc2
--- /dev/null
+++ b/tests/FunctionalTests/tickets/protected/pages/Ticket900.page
@@ -0,0 +1,45 @@
+
+
+Current Command:
+
+
+
+
+
+ Parent->Data['title']%>/>
+
+
+ Parent->Data['title']%>/>
+
+
+
+
+
+
+
diff --git a/tests/FunctionalTests/tickets/protected/pages/Ticket900.php b/tests/FunctionalTests/tickets/protected/pages/Ticket900.php
new file mode 100644
index 00000000..21e87f67
--- /dev/null
+++ b/tests/FunctionalTests/tickets/protected/pages/Ticket900.php
@@ -0,0 +1,58 @@
+IsPostBack)
+ {
+ $this->DataGrid->DataSource=$this->Data;
+ $this->DataGrid->dataBind();
+ }
+ }
+
+
+ protected function getData()
+ {
+ return array(
+ array( 'title' => 'Title A'),
+ array( 'title' => 'Title B'),
+ array( 'title' => 'Title C')
+ );
+ }
+
+
+ public function editItem($sender,$param)
+ {
+ $this->CommandName->Text='edit';
+ $this->DataGrid->EditItemIndex=$param->Item->ItemIndex;
+ $this->DataGrid->DataSource=$this->Data;
+ $this->DataGrid->dataBind();
+ }
+
+ public function saveItem($sender,$param)
+ {
+ $this->CommandName->Text='save';
+ $this->DataGrid->EditItemIndex=-1;
+ $this->DataGrid->DataSource=$this->Data;
+ $this->DataGrid->dataBind();
+ }
+
+ public function cancelItem($sender,$param)
+ {
+ $this->CommandName->Text='cancel';
+ $this->DataGrid->EditItemIndex=-1;
+ $this->DataGrid->DataSource=$this->Data;
+ $this->DataGrid->dataBind();
+ }
+
+ public function deleteItem($sender,$param)
+ {
+ $this->CommandName->Text='delete';
+ $this->DataGrid->EditItemIndex=-1;
+ $this->DataGrid->DataSource=$this->Data;
+ $this->DataGrid->dataBind();
+ }
+
+}
+?>
diff --git a/tests/FunctionalTests/tickets/protected/pages/Ticket922.page b/tests/FunctionalTests/tickets/protected/pages/Ticket922.page
new file mode 100644
index 00000000..87932680
--- /dev/null
+++ b/tests/FunctionalTests/tickets/protected/pages/Ticket922.page
@@ -0,0 +1,12 @@
+
+
+Problem with TUrlMapping and urlencoding
+
+Enter a string with spaces that will be used as URL parameter
+
+
+
+
+Decoded String:
+
+
diff --git a/tests/FunctionalTests/tickets/protected/pages/Ticket922.php b/tests/FunctionalTests/tickets/protected/pages/Ticket922.php
new file mode 100644
index 00000000..52d4e411
--- /dev/null
+++ b/tests/FunctionalTests/tickets/protected/pages/Ticket922.php
@@ -0,0 +1,13 @@
+Text->Text;
+ $url= $this->getService()->constructUrl('Ticket922', array('text'=>$text));
+ $this->getResponse()->redirect($url);
+ }
+
+ public function onLoad($param) {
+ if ($this->Request->contains('text'))
+ $this->Result->setText($this->Request->itemAt('text'));
+ }
+}
diff --git a/tests/FunctionalTests/tickets/protected/pages/Ticket925.page b/tests/FunctionalTests/tickets/protected/pages/Ticket925.page
new file mode 100755
index 00000000..cdb1e0fe
--- /dev/null
+++ b/tests/FunctionalTests/tickets/protected/pages/Ticket925.page
@@ -0,0 +1,11 @@
+
+
+
+ Timer 1 :
+ Timer 2 :
+
+
+
+
+
+
\ No newline at end of file
diff --git a/tests/FunctionalTests/tickets/protected/pages/Ticket925.php b/tests/FunctionalTests/tickets/protected/pages/Ticket925.php
new file mode 100755
index 00000000..0284bd66
--- /dev/null
+++ b/tests/FunctionalTests/tickets/protected/pages/Ticket925.php
@@ -0,0 +1,76 @@
+getViewState('timer1', 0);
+ }
+
+ public function getTimer2Value()
+ {
+ return $this->getViewState('timer2', 0);
+ }
+
+ public function setTimer1Value($value)
+ {
+ $this->setViewState('timer1', $value, 0);
+ }
+
+ public function setTimer2Value($value)
+ {
+ $this->setViewState('timer2', $value, 0);
+ }
+
+ public function startTimer1($sender, $param)
+ {
+ $this->timer1->startTimer();
+ }
+
+ public function stopTimer1($sender, $param)
+ {
+ $this->timer1->stopTimer();
+ }
+
+ public function startTimer2($sender, $param)
+ {
+ $this->timer2->startTimer();
+ }
+
+ public function stopTimer2($sender, $param)
+ {
+ $this->timer2->stopTimer();
+ }
+
+ public function changeIntervalTimer1($sender, $param)
+ {
+ $this->timer1->setInterval(1);
+ }
+
+ public function timer1callback ($sender, $param)
+ {
+ $this->timer1result->Text .= ($this->Timer1Value+=$this->timer1->Interval).'... ';
+ if ($this->Timer1Value > 20)
+ {
+ $this->timer1Value=0;
+ $this->timer1result->Text='';
+ $this->timer1->stopTimer();
+ }
+
+ }
+
+ public function timer2callback ($sender, $param)
+ {
+ $this->timer2result->Text .= ($this->Timer2Value+=$this->timer2->Interval).'... ';
+ if ($this->Timer2Value > 20)
+ {
+ $this->timer2Value=0;
+ $this->timer2result->Text='';
+ $this->timer2->stopTimer();
+ }
+ }
+
+}
+?>
\ No newline at end of file
diff --git a/tests/FunctionalTests/tickets/tests/Ticket595TestCase.php b/tests/FunctionalTests/tickets/tests/Ticket595TestCase.php
index e2487f25..4321bd67 100644
--- a/tests/FunctionalTests/tickets/tests/Ticket595TestCase.php
+++ b/tests/FunctionalTests/tickets/tests/Ticket595TestCase.php
@@ -18,7 +18,7 @@ class Ticket595TestCase extends SeleniumTestCase
$this->type($base.'A', 'test@pradosoft.com');
$this->click($base.'ctl2');
$this->pause(800);
- $this->assertAttribute($base.'A@class','');
+ $this->assertAttribute($base.'A@class','null');
$this->click($base.'ctl5');
@@ -33,7 +33,7 @@ class Ticket595TestCase extends SeleniumTestCase
$this->type($base.'B', 'test@pradosoft.com');
$this->click($base.'ctl5');
$this->pause(800);
- $this->assertAttribute($base.'B@class','');
+ $this->assertAttribute($base.'B@class','null');
}
}
?>
diff --git a/tests/FunctionalTests/tickets/tests/Ticket900TestCase.php b/tests/FunctionalTests/tickets/tests/Ticket900TestCase.php
new file mode 100644
index 00000000..b80e1187
--- /dev/null
+++ b/tests/FunctionalTests/tickets/tests/Ticket900TestCase.php
@@ -0,0 +1,19 @@
+open('tickets/index.php?page=Ticket900');
+ $this->assertTitle("Verifying Ticket 900");
+ $base = 'ctl0_Content_';
+
+ $this->clickAndWait('ctl0$Content$DataGrid$ctl1$ctl3');
+ $this->type($base.'DataGrid_ctl1_TextBox', '');
+ $this->click($base.'DataGrid_ctl1_ctl3');
+ $this->clickAndWait('ctl0$Content$DataGrid$ctl1$ctl4');
+ $this->assertText($base.'CommandName', 'cancel');
+ }
+}
+
+?>
diff --git a/tests/FunctionalTests/tickets/tests/Ticket922TestCase.php b/tests/FunctionalTests/tickets/tests/Ticket922TestCase.php
new file mode 100644
index 00000000..8420c10d
--- /dev/null
+++ b/tests/FunctionalTests/tickets/tests/Ticket922TestCase.php
@@ -0,0 +1,18 @@
+open('tickets/index.php?page=Ticket922');
+ $this->assertTitle("Verifying Ticket 922");
+ $base = 'ctl0_Content_';
+
+ $this->type($base.'Text', 'two words');
+ $this->clickAndWait('ctl0$Content$ctl0');
+ $this->assertText($base.'Result','two words');
+
+ }
+}
+
+?>
--
cgit v1.2.3