diff options
Diffstat (limited to 'tests/FunctionalTests/tickets')
5 files changed, 104 insertions, 7 deletions
diff --git a/tests/FunctionalTests/tickets/protected/pages/Ticket205.page b/tests/FunctionalTests/tickets/protected/pages/Ticket205.page index 1f271c14..1481a227 100644 --- a/tests/FunctionalTests/tickets/protected/pages/Ticket205.page +++ b/tests/FunctionalTests/tickets/protected/pages/Ticket205.page @@ -1,4 +1,26 @@ <com:TContent ID="Content"> <h3>TCustomValidator not enabling ControlCssClass or prop:ClientSide.OnError after postback.</h3> - + <style> + .required + { + border: 1px solid red; + background-color: pink; + } + </style> + <script type="text/javascript"> + function clientSideCustomValidate(sender, param) + { + return param == "Prado"; + } + </script> + <com:TTextBox ID="textbox1" /> + <com:TCustomValidator + ID="validator1" + ControlToValidate="textbox1" + ControlCssClass="required" + OnServerValidate="customValidate" + ClientValidationFunction="clientSideCustomValidate" + ClientSide.OnError="alert('error')" + ErrorMessage="must equal to 'Prado'" /> + <com:TButton ID="button1" Text="Submit!" /> </com:TContent>
\ No newline at end of file diff --git a/tests/FunctionalTests/tickets/protected/pages/Ticket205.php b/tests/FunctionalTests/tickets/protected/pages/Ticket205.php new file mode 100644 index 00000000..6145af9a --- /dev/null +++ b/tests/FunctionalTests/tickets/protected/pages/Ticket205.php @@ -0,0 +1,11 @@ +<?php + +class Ticket205 extends TPage +{ + function customValidate($sender, $param) + { + $param->IsValid = $this->textbox1->Text == "Prado"; + } +} + +?>
\ No newline at end of file diff --git a/tests/FunctionalTests/tickets/protected/pages/Ticket207.page b/tests/FunctionalTests/tickets/protected/pages/Ticket207.page index 8826c208..556c5aae 100644 --- a/tests/FunctionalTests/tickets/protected/pages/Ticket207.page +++ b/tests/FunctionalTests/tickets/protected/pages/Ticket207.page @@ -1,13 +1,17 @@ <com:TContent ID="Content"> <h2>Validators ClientSide.OnError triggered twice</h2> - <com:TTextBox ID="T" /><br /> - <com:TRequiredFieldValidator ControlToValidate="T" Text="Error" - ClientSide.OnError="Logger.info('error on T fired')" /> + <h3>Use ClientSide.ObseveChanges="false"</h3> + <com:TTextBox ID="text1" /><br /> + <com:TRequiredFieldValidator + id="validator1" + ControlToValidate="text1" Text="Error" + ClientSide.ObserveChanges="false" + ClientSide.OnError="alert('error on text1 fired')" /> <br /> - <com:TTextBox ID="B" /><br /> - <com:TRequiredFieldValidator ControlToValidate="B" Text="Error" /> + <com:TTextBox ID="text2" /><br /> + <com:TRequiredFieldValidator id="validator2" ControlToValidate="text2" Text="Error" /> <br /> - <com:TButton Text="submit" /> + <com:TButton id="button1" Text="submit" /> <h3>Conditions</h3> <pre> (TextBox? B is just there to prevent server submission) diff --git a/tests/FunctionalTests/tickets/tests/Ticket205TestCase.php b/tests/FunctionalTests/tickets/tests/Ticket205TestCase.php new file mode 100644 index 00000000..85785697 --- /dev/null +++ b/tests/FunctionalTests/tickets/tests/Ticket205TestCase.php @@ -0,0 +1,23 @@ +<?php + +class Ticket205TestCase extends SeleniumTestCase +{ + function test() + { + $base = 'ctl0_Content_'; + $this->open("tickets/index.php?page=Ticket205"); + $this->assertTitle("Verifying Ticket 205"); + $this->assertNotVisible("{$base}validator1"); + + $this->type("{$base}textbox1", "test"); + $this->click("{$base}button1"); + $this->assertVisible("{$base}validator1"); + $this->assertAlert("error"); + + $this->type("{$base}textbox1", "Prado"); + $this->clickAndWait("{$base}button1"); + $this->assertNotVisible("{$base}validator1"); + } +} + +?>
\ No newline at end of file diff --git a/tests/FunctionalTests/tickets/tests/Ticket207TestCase.php b/tests/FunctionalTests/tickets/tests/Ticket207TestCase.php new file mode 100644 index 00000000..53ae6528 --- /dev/null +++ b/tests/FunctionalTests/tickets/tests/Ticket207TestCase.php @@ -0,0 +1,37 @@ +<?php + +class Ticket207TestCase extends SeleniumTestCase +{ + function test() + { + $base = 'ctl0_Content_'; + $this->open('tickets/index.php?page=Ticket207'); + $this->assertTitle("Verifying Ticket 207"); + $this->assertNotVisible("{$base}validator1"); + $this->assertNotVisible("{$base}validator2"); + + $this->click("{$base}button1"); + $this->assertAlert('error on text1 fired'); + $this->assertVisible("{$base}validator1"); + $this->assertVisible("{$base}validator2"); + + $this->type("{$base}text1", 'test'); + $this->assertVisible("{$base}validator1"); + $this->assertVisible("{$base}validator2"); + + $this->click("{$base}button1"); + $this->assertNotVisible("{$base}validator1"); + $this->assertVisible("{$base}validator2"); + + $this->type("{$base}text1", ''); + $this->assertNotVisible("{$base}validator1"); + $this->assertVisible("{$base}validator2"); + + $this->click("{$base}button1"); + $this->assertAlert('error on text1 fired'); + $this->assertVisible("{$base}validator1"); + $this->assertVisible("{$base}validator2"); + } +} + +?>
\ No newline at end of file |