<html><body><div style="padding-top: 10px;">
<p>
<a href="http://localhost:7080/test/portal_tests/result_20091119_005039/testTable.76">testTable.76</a>
</p>
<div>
<table border="1" cellpadding="1" cellspacing="1">
<thead>
<tr class="title status_failed" style="background-color:red"><td rowspan="1" colspan="3">Test View Mode</td></tr>
</thead><tbody>
<tr class="status_done" style="cursor: pointer;">
<td>store</td>
<td>http://localhost:7080/test</td>
<td>base_url</td>
</tr>
<tr class="status_done" style="cursor: pointer;">
<td>open</td>
<td>${base_url}/foo_module/ListBoxZuite_reset</td>
<td></td>
</tr>
<tr class="status_passed" style="cursor: pointer;">
<td>assertTextPresent</td>
<td>Reset Successfully.</td>
<td></td>
</tr>
<tr class="status_done" style="cursor: pointer;">
<td>open</td>
<td>${base_url}/foo_module/Zuite_waitForActivities</td>
<td></td>
</tr>
<tr class="status_passed" style="cursor: pointer;">
<td>assertTextPresent</td>
<td>Done.</td>
<td></td>
</tr>
<tr class="status_done" style="cursor: pointer;">
<td>open</td>
<td>${base_url}/foo_module/view</td>
<td></td>
</tr>
<tr class="status_done" style="cursor: pointer;">
<td>open</td>
<td>${base_url}/foo_module/FooModule_createObjects?num:int=1</td>
<td></td>
</tr>
<tr class="status_passed" style="cursor: pointer;">
<td>assertTextPresent</td>
<td>Created Successfully.</td>
<td></td>
</tr>
<tr class="status_done" style="cursor: pointer;">
<td>open</td>
<td>${base_url}/foo_module/0/Foo_createObjects</td>
<td></td>
</tr>
<tr class="status_passed" style="cursor: pointer;">
<td>assertTextPresent</td>
<td>Created Successfully.</td>
<td></td>
</tr>
<tr class="status_done" style="cursor: pointer;">
<td>open</td>
<td>${base_url}/foo_module/Zuite_waitForActivities</td>
<td></td>
</tr>
<tr class="status_passed" style="cursor: pointer;">
<td>assertTextPresent</td>
<td>Done.</td>
<td></td>
</tr>
<tr class="status_done" style="cursor: pointer;">
<td>open</td>
<td>${base_url}/foo_module/0/view</td>
<td></td>
</tr>
<tr class="status_passed" style="cursor: pointer;">
<td>verifyValue</td>
<td>field_my_title</td>
<td>Title 0</td>
</tr>
<tr class="status_passed" style="cursor: pointer;">
<td>verifyText</td>
<td>id=listbox_title</td>
<td>Foo Lines:</td>
</tr>
<tr class="status_passed" style="cursor: pointer;">
<td>verifyText</td>
<td>id=listbox_record_number</td>
<td>10 records</td>
</tr>
<tr class="status_passed" style="cursor: pointer;">
<td>verifyElementNotPresent</td>
<td>id=listbox_item_number</td>
<td></td>
</tr>
<!--
To check page number use ListBoxZuite_CommonTemplate/macros/checkCurrentPage to reduce
"if TestTool_getSkinName()!='Mobile'" statements
- prefix is gives the prefix of the id of the element containing the page number
- set_page the number of the page
- lines_per_page is used in mobile because there isn't "listbox_set_page" element
-->
<tr class="status_passed" style="cursor: pointer;">
<td>assertValue</td>
<!--<tal:block tal:condition="python: context.TestTool_getSkinName()!='Mobile'">
<td tal:content="python: 'id=%s_set_page' % (prefix, )"></td>
</tal:block>
<tal:block tal:condition="python: context.TestTool_getSkinName()=='Mobile'">
<td tal:content="python: 'id=%s_page_selection' % (prefix, )"></td>
</tal:block> -->
<td>id=listbox_set_page</td>
<td>1</td>
</tr>
<tr class="status_passed" style="cursor: pointer;">
<td>verifyElementPresent</td>
<td>id=listbox_next_page</td>
<td></td>
</tr>
<tr class="status_passed" style="cursor: pointer;">
<td>verifyElementNotPresent</td>
<td>id=listbox_previous_page</td>
<td></td>
</tr>
<tr class="status_passed" style="cursor: pointer;">
<td>verifyElementNotPresent</td>
<td>id=listbox_flat_list_mode</td>
<td></td>
</tr>
<tr class="status_passed" style="cursor: pointer;">
<td>verifyElementNotPresent</td>
<td>id=listbox_domain_tree_mode</td>
<td></td>
</tr>
<tr class="status_passed" style="cursor: pointer;">
<td>verifyElementNotPresent</td>
<td>id=listbox_report_tree_mode</td>
<td></td>
</tr>
<tr class="status_passed" style="cursor: pointer;">
<td>verifyValue</td>
<td>//*[@id="listbox_data_line_0"]//input[@type="text"][1]</td>
<td>0</td>
</tr>
<tr class="status_passed" style="cursor: pointer;">
<td>verifyEditable</td>
<td>//*[@id="listbox_data_line_0"]//input[@type="text"][1]</td>
<td></td>
</tr>
<tr class="status_passed" style="cursor: pointer;">
<td>verifyValue</td>
<td>//tr[@id="listbox_data_line_0"]/td[2]//input[@type="text"]</td>
<td>Title 0</td>
</tr>
<tr class="status_passed" style="cursor: pointer;">
<td>verifyEditable</td>
<td>//*[@id="listbox_data_line_0"]//input[@type="text"][2]</td>
<td></td>
</tr>
<tr class="status_passed" style="cursor: pointer;">
<td>verifyValue</td>
<td>//*[@id="listbox_data_line_1"]//input[@type="text"][1]</td>
<td>1</td>
</tr>
<tr class="status_passed" style="cursor: pointer;">
<td>verifyEditable</td>
<td>//*[@id="listbox_data_line_1"]//input[@type="text"][1]</td>
<td></td>
</tr>
<tr class="status_passed" style="cursor: pointer;">
<td>verifyValue</td>
<td>//tr[@id="listbox_data_line_1"]/td[2]//input[@type="text"]</td>
<td>Title 1</td>
</tr>
<tr class="status_passed" style="cursor: pointer;">
<td>verifyEditable</td>
<td>//*[@id="listbox_data_line_1"]//input[@type="text"][2]</td>
<td></td>
</tr>
<tr class="status_passed" style="cursor: pointer;">
<td>verifyValue</td>
<td>//*[@id="listbox_data_line_2"]//input[@type="text"][1]</td>
<td>2</td>
</tr>
<tr class="status_passed" style="cursor: pointer;">
<td>verifyEditable</td>
<td>//*[@id="listbox_data_line_2"]//input[@type="text"][1]</td>
<td></td>
</tr>
<tr class="status_passed" style="cursor: pointer;">
<td>verifyValue</td>
<td>//tr[@id="listbox_data_line_2"]/td[2]//input[@type="text"]</td>
<td>Title 2</td>
</tr>
<tr class="status_passed" style="cursor: pointer;">
<td>verifyEditable</td>
<td>//*[@id="listbox_data_line_2"]//input[@type="text"][2]</td>
<td></td>
</tr>
<!-- Go to next page -->
<tr class="status_done" style="cursor: pointer;">
<td>clickAndWait</td>
<td>id=listbox_next_page</td>
<td></td>
</tr>
<tr class="status_failed" style="background-color:red" style="cursor: pointer;">
<td>assertValue</td>
<!--<tal:block tal:condition="python: context.TestTool_getSkinName()!='Mobile'">
<td tal:content="python: 'id=%s_set_page' % (prefix, )"></td>
</tal:block>
<tal:block tal:condition="python: context.TestTool_getSkinName()=='Mobile'">
<td tal:content="python: 'id=%s_page_selection' % (prefix, )"></td>
</tal:block> -->
<td>id=listbox_set_page</td>
<td>Actual value '1' did not match '2'</td>
</tr>
<tr class="" style="cursor: pointer;">
<td>verifyElementPresent</td>
<td>id=listbox_next_page</td>
<td></td>
</tr>
<tr class="" style="cursor: pointer;">
<td>verifyElementPresent</td>
<td>id=listbox_previous_page</td>
<td></td>
</tr>
<tr class="" style="cursor: pointer;">
<td>verifyValue</td>
<td>//*[@id="listbox_data_line_0"]//input[@type="text"][1]</td>
<td>3</td>
</tr>
<tr class="" style="cursor: pointer;">
<td>verifyEditable</td>
<td>//*[@id="listbox_data_line_0"]//input[@type="text"][1]</td>
<td></td>
</tr>
<tr class="" style="cursor: pointer;">
<td>verifyValue</td>
<td>//tr[@id="listbox_data_line_0"]/td[2]//input[@type="text"]</td>
<td>Title 3</td>
</tr>
<tr class="" style="cursor: pointer;">
<td>verifyEditable</td>
<td>//*[@id="listbox_data_line_0"]//input[@type="text"][2]</td>
<td></td>
</tr>
<tr class="" style="cursor: pointer;">
<td>verifyValue</td>
<td>//*[@id="listbox_data_line_1"]//input[@type="text"][1]</td>
<td>4</td>
</tr>
<tr class="" style="cursor: pointer;">
<td>verifyEditable</td>
<td>//*[@id="listbox_data_line_1"]//input[@type="text"][1]</td>
<td></td>
</tr>
<tr class="" style="cursor: pointer;">
<td>verifyValue</td>
<td>//tr[@id="listbox_data_line_1"]/td[2]//input[@type="text"]</td>
<td>Title 4</td>
</tr>
<tr class="" style="cursor: pointer;">
<td>verifyEditable</td>
<td>//*[@id="listbox_data_line_1"]//input[@type="text"][2]</td>
<td></td>
</tr>
<tr class="" style="cursor: pointer;">
<td>verifyValue</td>
<td>//*[@id="listbox_data_line_2"]//input[@type="text"][1]</td>
<td>5</td>
</tr>
<tr class="" style="cursor: pointer;">
<td>verifyEditable</td>
<td>//*[@id="listbox_data_line_2"]//input[@type="text"][1]</td>
<td></td>
</tr>
<tr class="" style="cursor: pointer;">
<td>verifyValue</td>
<td>//tr[@id="listbox_data_line_2"]/td[2]//input[@type="text"]</td>
<td>Title 5</td>
</tr>
<tr class="" style="cursor: pointer;">
<td>verifyEditable</td>
<td>//*[@id="listbox_data_line_2"]//input[@type="text"][2]</td>
<td></td>
</tr>
<!-- Edit some values -->
<tr class="" style="cursor: pointer;">
<td>type</td>
<td>//*[@id="listbox_data_line_0"]//input[@type="text"][1]</td>
<td>31</td>
</tr>
<tr class="" style="cursor: pointer;">
<td>type</td>
<td>//tr[@id="listbox_data_line_0"]/td[2]//input[@type="text"]</td>
<td>Another Title 3</td>
</tr>
<tr class="" style="cursor: pointer;">
<td>type</td>
<td>//*[@id="listbox_data_line_1"]//input[@type="text"][1]</td>
<td>9999999</td>
</tr>
<tr class="" style="cursor: pointer;">
<td>clickAndWait</td>
<td>Base_edit:method</td>
<td></td>
</tr>
<tr class="" style="cursor: pointer;">
<td>assertValue</td>
<!--<tal:block tal:condition="python: context.TestTool_getSkinName()!='Mobile'">
<td tal:content="python: 'id=%s_set_page' % (prefix, )"></td>
</tal:block>
<tal:block tal:condition="python: context.TestTool_getSkinName()=='Mobile'">
<td tal:content="python: 'id=%s_page_selection' % (prefix, )"></td>
</tal:block> -->
<td>id=listbox_set_page</td>
<td>2</td>
</tr>
<tr class="" style="cursor: pointer;">
<td>verifyElementPresent</td>
<td>id=listbox_next_page</td>
<td></td>
</tr>
<tr class="" style="cursor: pointer;">
<td>verifyElementPresent</td>
<td>id=listbox_previous_page</td>
<td></td>
</tr>
<tr class="" style="cursor: pointer;">
<td>verifyValue</td>
<td>//*[@id="listbox_data_line_0"]//input[@type="text"][1]</td>
<td>31</td>
</tr>
<tr class="" style="cursor: pointer;">
<td>verifyEditable</td>
<td>//*[@id="listbox_data_line_0"]//input[@type="text"][1]</td>
<td></td>
</tr>
<tr class="" style="cursor: pointer;">
<td>verifyValue</td>
<td>//tr[@id="listbox_data_line_0"]/td[2]//input[@type="text"]</td>
<td>Another Title 3</td>
</tr>
<tr class="" style="cursor: pointer;">
<td>verifyEditable</td>
<td>//*[@id="listbox_data_line_0"]//input[@type="text"][2]</td>
<td></td>
</tr>
<tr class="" style="cursor: pointer;">
<td>verifyValue</td>
<td>//*[@id="listbox_data_line_1"]//input[@type="text"][1]</td>
<td>5</td>
</tr>
<tr class="" style="cursor: pointer;">
<td>verifyEditable</td>
<td>//*[@id="listbox_data_line_1"]//input[@type="text"][1]</td>
<td></td>
</tr>
<tr class="" style="cursor: pointer;">
<td>verifyValue</td>
<td>//tr[@id="listbox_data_line_1"]/td[2]//input[@type="text"]</td>
<td>Title 5</td>
</tr>
<tr class="" style="cursor: pointer;">
<td>verifyEditable</td>
<td>//*[@id="listbox_data_line_1"]//input[@type="text"][2]</td>
<td></td>
</tr>
<tr class="" style="cursor: pointer;">
<td>verifyValue</td>
<td>//*[@id="listbox_data_line_2"]//input[@type="text"][1]</td>
<td>6</td>
</tr>
<tr class="" style="cursor: pointer;">
<td>verifyEditable</td>
<td>//*[@id="listbox_data_line_2"]//input[@type="text"][1]</td>
<td></td>
</tr>
<tr class="" style="cursor: pointer;">
<td>verifyValue</td>
<td>//tr[@id="listbox_data_line_2"]/td[2]//input[@type="text"]</td>
<td>Title 6</td>
</tr>
<tr class="" style="cursor: pointer;">
<td>verifyEditable</td>
<td>//*[@id="listbox_data_line_2"]//input[@type="text"][2]</td>
<td></td>
</tr>
<!-- Check validation error messages. -->
<tr class="" style="cursor: pointer;">
<td>type</td>
<td>//tr[@id="listbox_data_line_0"]/td[3]//input[@type="text"]</td>
<td>abc</td>
</tr>
<tr class="" style="cursor: pointer;">
<td>type</td>
<td>//tr[@id="listbox_data_line_1"]/td[4]/input[1]</td>
<td>yyyy</td>
</tr>
<tr class="" style="cursor: pointer;">
<td>type</td>
<td>//tr[@id="listbox_data_line_1"]/td[4]/input[2]</td>
<td>mm</td>
</tr>
<tr class="" style="cursor: pointer;">
<td>type</td>
<td>//*[@id="listbox_data_line_1"]/td[4]/input[3]</td>
<td>dd</td>
</tr>
<tr class="" style="cursor: pointer;">
<td>clickAndWait</td>
<td>Base_edit:method</td>
<td></td>
</tr>
<tr class="" style="cursor: pointer;">
<td>verifyValue</td>
<td>//tr[@id="listbox_data_line_0"]/td[3]//input[@type="text"]</td>
<td>abc</td>
</tr>
<tr class="" style="cursor: pointer;">
<td>verifyText</td>
<td>//tr[@id="listbox_data_line_0"]/td[3]</td>
<td>*You did not enter a floating point*</td>
</tr>
<tr class="" style="cursor: pointer;">
<td>verifyValue</td>
<td>//tr[@id="listbox_data_line_1"]/td[4]/input[1]</td>
<td>yyyy</td>
</tr>
<tr class="" style="cursor: pointer;">
<td>verifyValue</td>
<td>//tr[@id="listbox_data_line_1"]/td[4]/input[2]</td>
<td>mm</td>
</tr>
<tr class="" style="cursor: pointer;">
<td>verifyValue</td>
<td>//tr[@id="listbox_data_line_1"]/td[4]/input[3]</td>
<td>dd</td>
</tr>
<tr class="" style="cursor: pointer;">
<td>verifyText</td>
<td>//tr[@id="listbox_data_line_1"]/td[4]</td>
<td>*You did not enter a valid date and time.*</td>
</tr>
<!-- cleanup and save not to trigger unbefore unload -->
<tr class="" style="cursor: pointer;">
<td>type</td>
<td>//tr[@id="listbox_data_line_0"]/td[3]//input[@type="text"]</td>
<td></td>
</tr>
<tr class="" style="cursor: pointer;">
<td>type</td>
<td>//tr[@id="listbox_data_line_1"]/td[4]/input[1]</td>
<td></td>
</tr>
<tr class="" style="cursor: pointer;">
<td>type</td>
<td>//tr[@id="listbox_data_line_1"]/td[4]/input[2]</td>
<td></td>
</tr>
<tr class="" style="cursor: pointer;">
<td>type</td>
<td>//*[@id="listbox_data_line_1"]/td[4]/input[3]</td>
<td></td>
</tr>
<tr class="" style="cursor: pointer;">
<td>clickAndWait</td>
<td>Base_edit:method</td>
<td></td>
</tr>
<tr class="" style="cursor: pointer;">
<td>assertPortalStatusMessage</td>
<td>Data updated.</td>
<td></td>
</tr>
</tbody></table>
</div>
</div>
<div style="padding-top: 10px;">
<p>
<a href="http://localhost:7080/test/portal_tests/result_20091119_005039/testTable.81">testTable.81</a>
</p>
<div>
<table border="1" cellpadding="1" cellspacing="1">
<thead>
<tr class="title status_failed" style="background-color:red"><td rowspan="1" colspan="3">Test validation on editable cells</td></tr>
</thead><tbody>
<tr class="status_done" style="cursor: pointer;">
<td>store</td>
<td>http://localhost:7080/test</td>
<td>base_url</td>
</tr>
<tr class="status_done" style="cursor: pointer;">
<td>open</td>
<td>${base_url}/foo_module/ListBoxZuite_reset</td>
<td></td>
</tr>
<tr class="status_passed" style="cursor: pointer;">
<td>assertTextPresent</td>
<td>Reset Successfully.</td>
<td></td>
</tr>
<tr class="status_done" style="cursor: pointer;">
<td>open</td>
<td>${base_url}/foo_module/Zuite_waitForActivities</td>
<td></td>
</tr>
<tr class="status_passed" style="cursor: pointer;">
<td>assertTextPresent</td>
<td>Done.</td>
<td></td>
</tr>
<tr class="status_done" style="cursor: pointer;">
<td>open</td>
<td>${base_url}/foo_module/view</td>
<td></td>
</tr>
<tr class="status_done" style="cursor: pointer;">
<td>open</td>
<td>${base_url}/foo_module/FooModule_createObjects?create_line:int=1</td>
<td></td>
</tr>
<tr class="status_passed" style="cursor: pointer;">
<td>assertTextPresent</td>
<td>Created Successfully.</td>
<td></td>
</tr>
<tr class="status_done" style="cursor: pointer;">
<td>open</td>
<td>${base_url}/foo_module/Zuite_waitForActivities</td>
<td></td>
</tr>
<tr class="status_passed" style="cursor: pointer;">
<td>assertTextPresent</td>
<td>Done.</td>
<td></td>
</tr>
<tr class="status_done" style="cursor: pointer;">
<td>open</td>
<td>${base_url}/foo_module/0/1/FooLine_viewDynamicMatrixBox</td>
<td></td>
</tr>
<tr class="status_done" style="cursor: pointer;">
<td>type</td>
<td>field_matrixbox_quantity_cell_0_0_0</td>
<td>xx</td>
</tr>
<tr class="status_done" style="cursor: pointer;">
<td>type</td>
<td>field_matrixbox_quantity_cell_0_1_0</td>
<td>2</td>
</tr>
<tr class="status_done" style="cursor: pointer;">
<td>clickAndWait</td>
<td>Base_edit:method</td>
<td></td>
</tr>
<tr class="status_failed" style="background-color:red" style="cursor: pointer;">
<td>verifyValue</td>
<td>field_matrixbox_quantity_cell_0_0_0</td>
<td>Actual value '' did not match 'xx'</td>
</tr>
<tr class="status_failed" style="background-color:red" style="cursor: pointer;">
<td>verifyText</td>
<td>//fieldset[@id='fieldset_bottom']/div[1]/div/div/table/tbody/tr[2]/td[2]</td>
<td>Actual value '' did not match '*You did not enter a floating point*'</td>
</tr>
<tr class="status_failed" style="background-color:red" style="cursor: pointer;">
<td>verifyValue</td>
<td>field_matrixbox_quantity_cell_0_1_0</td>
<td>Actual value '' did not match '2'</td>
</tr>
<tr class="status_passed" style="cursor: pointer;">
<td>verifyValue</td>
<td>field_matrixbox_quantity_cell_1_0_0</td>
<td></td>
</tr>
<tr class="status_passed" style="cursor: pointer;">
<td>verifyValue</td>
<td>field_matrixbox_quantity_cell_1_1_0</td>
<td></td>
</tr>
<!-- create cells -->
<tr class="status_done" style="cursor: pointer;">
<td>type</td>
<td>field_matrixbox_quantity_cell_0_0_0</td>
<td>1</td>
</tr>
<tr class="status_done" style="cursor: pointer;">
<td>type</td>
<td>field_matrixbox_quantity_cell_0_1_0</td>
<td>2</td>
</tr>
<tr class="status_done" style="cursor: pointer;">
<td>clickAndWait</td>
<td>Base_edit:method</td>
<td></td>
</tr>
<tr class="status_passed" style="cursor: pointer;">
<td>assertPortalStatusMessage</td>
<td>Data updated.</td>
<td></td>
</tr>
<tr class="status_done" style="cursor: pointer;">
<td>type</td>
<td>field_matrixbox_quantity_cell_0_0_0</td>
<td>xx</td>
</tr>
<tr class="status_done" style="cursor: pointer;">
<td>type</td>
<td>field_matrixbox_quantity_cell_0_1_0</td>
<td>3</td>
</tr>
<tr class="status_done" style="cursor: pointer;">
<td>clickAndWait</td>
<td>Base_edit:method</td>
<td></td>
</tr>
<tr class="status_passed" style="cursor: pointer;">
<td>verifyValue</td>
<td>field_matrixbox_quantity_cell_0_0_0</td>
<td>xx</td>
</tr>
<tr class="status_passed" style="cursor: pointer;">
<td>verifyText</td>
<td>//fieldset[@id='fieldset_bottom']/div[1]/div/div/table/tbody/tr[2]/td[2]</td>
<td>*You did not enter a floating point*</td>
</tr>
<tr class="status_failed" style="background-color:red" style="cursor: pointer;">
<td>verifyValue</td>
<td>field_matrixbox_quantity_cell_0_1_0</td>
<td>Actual value '2.0' did not match '3'</td>
</tr>
<tr class="status_passed" style="cursor: pointer;">
<td>verifyValue</td>
<td>field_matrixbox_quantity_cell_1_0_0</td>
<td></td>
</tr>
<tr class="status_passed" style="cursor: pointer;">
<td>verifyValue</td>
<td>field_matrixbox_quantity_cell_1_1_0</td>
<td></td>
</tr>
<!-- cleanup and save -->
<tr class="status_done" style="cursor: pointer;">
<td>type</td>
<td>field_matrixbox_quantity_cell_0_0_0</td>
<td>1.0</td>
</tr>
<tr class="status_done" style="cursor: pointer;">
<td>type</td>
<td>field_matrixbox_quantity_cell_0_1_0</td>
<td>2.0</td>
</tr>
<tr class="status_done" style="cursor: pointer;">
<td>clickAndWait</td>
<td>Base_edit:method</td>
<td></td>
</tr>
<tr class="status_passed" style="cursor: pointer;">
<td>assertPortalStatusMessage</td>
<td>Data updated.</td>
<td></td>
</tr>
</tbody>
</table>
</div>
</div>
</body></html>