Commit 82328d7f authored by Rafael Monnerat's avatar Rafael Monnerat

slapos_jio_[zh_]ui_test: Refactor and clean up test code entirely

 * Remove duplication of unmodified scripts from Chinese translation
 * Use slapos_jio_ui_test as dependency of slapos_jio_zh_ui_test as we can reuse scripts
 * slapos_ui_zh_tests: Massively Remove unecessary duplication
 * Fixup! default_address_region was replaced by a selection
 * Correctly ident the entire html from the tests and templates (using
monaco autoformat)
parent a4c03494
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOSJS Account</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test RenderJS UI</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="person_name python: 'Demo User Functional'">
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS Account</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="person_name python: 'Demo User Functional'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item_account" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>assertElementPresent</td>
<td>//label[text()="First Name"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>assertElementPresent</td>
<td>//label[text()="Last Name"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>assertElementPresent</td>
<td>//label[text()="Email"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>assertElementPresent</td>
<td>//label[text()="Telephone"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>assertElementPresent</td>
<td>//label[text()="Address"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>assertElementPresent</td>
<td>//label[text()="Postal Code"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>assertElementPresent</td>
<td>//label[text()="City"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>assertElementPresent</td>
<td>//label[text()="Country"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td colspan="3"><b> Rename user to DEMO A </b></td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@id="first_name"]</td>
<td>DEMO A</td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@id="last_name"]</td>
<td>DEMO B</td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@id="default_email_text"]</td>
<td>demoA@nexedi.com</td>
</tr>
</tr>
<!-- Perform an intermediate save to ensure we can edit partial values -->
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/save" />
<!-- Perform an intermediate save to ensure we can edit partial values -->
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/save" />
<tr>
<tr>
<td>type</td>
<td>//textarea[@id="default_address_street_address"]</td>
<td>My New Address</td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@id="default_address_city"]</td>
<td>My New City</td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@id="default_address_zip_code"]</td>
<td>99999</td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@id="default_telephone_coordinate_text"]</td>
<td>+55 0192182812</td>
</tr>
</tr>
<tr>
<tr>
<td>select</td>
<td>//select[@id="default_address_region"]</td>
<td>Brazil</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/save" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/save" />
<!-- access somewhere else -->
<tal:block define="menu_item python: 'Sites'; header menu_item">
<!-- access somewhere else -->
<tal:block define="menu_item python: 'Sites'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block define="person_name python: 'DEMO A DEMO B'">
<tal:block define="person_name python: 'DEMO A DEMO B'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item_account" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@id="default_address_city" and @value="My New City"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>verifyValue</td>
<td>//textarea[@id="default_address_street_address"]</td>
<td>My New Address</td>
</tr>
</tr>
<tr>
<tr>
<td>assertElementPresent</td>
<td>//input[@id="default_address_city" and @value="My New City"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>assertElementPresent</td>
<td>//input[@id="default_address_zip_code" and @value="99999"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>assertElementPresent</td>
<td>//input[@id="default_telephone_coordinate_text" and @value="+55 0192182812"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>assertElementPresent</td>
<td>//select[@id="default_address_region"]/option[text()="Brazil" and @selected="selected"]</td>
<td></td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_logout" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_logout" />
</tbody></table>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>est SlapOS UI Account Certificate</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test SlapOS UI Account Certificate</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS UI Account Certificate</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="person_name python: 'Demo User Functional'">
<tal:block define="person_name python: 'Demo User Functional'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item_account" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Request User Certificate</b> </td>
</tr>
</tr>
<tal:block define="menu_action python: 'Request Certificate'">
<tal:block define="menu_action python: 'Request Certificate'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
</tal:block>
<tal:block define="header python: 'Request New Certificate'; ">
<tal:block define="header python: 'Request New Certificate'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': 'Certificate is Requested.'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//textarea[@name="certificate"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//textarea[@name="key"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Request New Certificate'; ">
<tal:block define="header python: 'Request New Certificate'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Request User Certificate</b> </td>
</tr>
</tr>
<tal:block define="menu_action python: 'Request Certificate'">
<tal:block define="menu_action python: 'Request Certificate'">
<tr>
<td colspan="3"><b tal:content="python: 'Click on %s' % menu_action"> Menu Item </b></td>
</tr>
<tr>
<td>waitForElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action">
</td>
<td></td>
</tr>
<tr>
<td>assertElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action">
</td>
<td></td>
</tr>
<tr>
<td>click</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action">
</td>
<td></td>
</tr>
</tal:block>
<tal:block define="header python: 'Request New Certificate'; ">
<tal:block define="header python: 'Request New Certificate'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block
tal:define="notification_configuration python: {'class': 'success',
'text': 'This person already has one certificate, please revoke it before request a new one..'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
</tal:block>
<tal:block define="header python: 'Request New Certificate'; ">
<tal:block define="header python: 'Request New Certificate'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Revoke Certificate</b></td>
</tr>
</tr>
<tal:block define="menu_action python: 'Revoke Certificate'">
<tal:block define="menu_action python: 'Revoke Certificate'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
</tal:block>
<tal:block define="header python: 'Revoke Person Certificate'; ">
<tal:block define="header python: 'Revoke Person Certificate'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': 'Certificate is Revoked.'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
</tal:block>
<tal:block define="header python: 'Your Account : Demo User Functional'; ">
<tal:block define="header python: 'Your Account : Demo User Functional'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Request User Certificate again</b> </td>
</tr>
</tr>
<tal:block define="menu_action python: 'Request Certificate'">
<tal:block define="menu_action python: 'Request Certificate'">
<tr>
<td colspan="3"><b tal:content="python: 'Click on %s' % menu_action"> Menu Item </b></td>
</tr>
<tr>
<td>waitForElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action">
</td>
<td></td>
</tr>
<tr>
<td>assertElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action">
</td>
<td></td>
</tr>
<tr>
<td>click</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action">
</td>
<td></td>
</tr>
</tal:block>
</tal:block>
<tal:block define="header python: 'Request New Certificate'; ">
<tal:block define="header python: 'Request New Certificate'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': 'Certificate is Requested.'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//textarea[@name="certificate"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//textarea[@name="key"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Request New Certificate'; ">
<tal:block define="header python: 'Request New Certificate'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_page_header" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_logout" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_logout" />
</tbody></table>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test RapidSpace Console Account Page Check</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test RapidSpace Console Account Page Check</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test RapidSpace Console Account Page Check</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test RapidSpace Console Account Page Check</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tr>
<tr>
<td>open</td>
<td>${base_url}/web_site_module/hostingjs/</td>
<td></td>
</tr>
<!--
</tr>
<!--
In testSlapOSJSAccountLogin, after visit hostingjs website,
the default user is "zope", so in that test we need to call
hostingjs/WebSite_logout to logout first.
......@@ -25,163 +28,165 @@ hostingjs/WebSite_logout to logout first.
Here we don't call it manually, due to the zope user doesn't
have the correct "me" setting, so we just let the getSettingMe
function redirect us to the login page -->
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//label[contains(text(), "Login")]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@name="__ac_name"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@name="__ac_password"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>__ac_name</td>
<td>demo_functional_user</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>__ac_password</td>
<td>demo_functional_user</td>
</tr>
</tr>
<tr>
<tr>
<td>clickAndWait</td>
<td>WebSite_login:method</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n="Login Account"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n="Tickets"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n="Invoices"]</td>
<td></td>
</tr>
</tr>
<!-- Account Tab -->
<tr>
<!-- Account Tab -->
<tr>
<td>click</td>
<td>//a[@data-i18n="Login Account"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//button[@data-i18n="Save"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n="Add Login"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n="Add Organisation"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n="Token"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n="Request Certificate"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n="Revoke Certificate"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//label[contains(text(), "First Name")]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//label[contains(text(), "Last Name")]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//label[contains(text(), "Email")]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@value="Demo User"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@value="Functional"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@value="demo@nexedi.com"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//h1[contains(text(), "Logins")]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[contains(text(), "Reference")]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[contains(text(), "Type")]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//h1[contains(text(), "Organisation")]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//th[contains(text(), "Title")]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[contains(text(), "Reference")]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//th[contains(text(), "Region")]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//th[contains(text(), "Status")]</td>
<td></td>
</tr>
</tbody></table>
</tr>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS UI Account Certificate</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test SlapOS UI Account Certificate</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="person_name python: 'Demo User Functional'">
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS UI Account Certificate</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="person_name python: 'Demo User Functional'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item_account" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Create another Login</b> </td>
</tr>
</tr>
<tal:block define="menu_action python: 'Add Login'">
<tal:block define="menu_action python: 'Add Login'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
</tal:block>
<tal:block define="header python: 'Add New User Login'; ">
<tal:block define="header python: 'Add New User Login'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Fill the form</b> </td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@name='reference']</td>
<td>demo_test_login_from_testSlapOSJSAccountLogin</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='password']</td>
<td>demo_test_password_from_testSlapOSJSAccountLogin</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='password_confirmation']</td>
<td>demo_test_password_from_testSlapOSJSAccountLogin</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': 'New User Login created.'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
</tal:block>
<tal:block define="header python: 'Your Account : Demo User Functional'; ">
<tal:block define="header python: 'Your Account : Demo User Functional'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="person_name python: 'Demo User Functional'">
<tal:block define="person_name python: 'Demo User Functional'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item_account" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(2)', 'footer': '2 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(2)', 'footer': '2 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>verifyTextPresent</td>
<td>demo_test_login_from_testSlapOSJSAccountLogin</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>click</td>
<td>//a[text()="demo_test_login_from_testSlapOSJSAccountLogin"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Login : demo_test_login_from_testSlapOSJSAccountLogin'; ">
<tal:block define="header python: 'Login : demo_test_login_from_testSlapOSJSAccountLogin'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tal:block define="menu_action python: 'Delete'">
<tal:block define="menu_action python: 'Delete'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
</tal:block>
<tal:block define="header python: 'Disable Login: demo_test_login_from_testSlapOSJSAccountLogin'; ">
<tal:block define="header python: 'Disable Login: demo_test_login_from_testSlapOSJSAccountLogin'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block define="header python: 'Your Account : Demo User Functional'; ">
<tal:block define="header python: 'Your Account : Demo User Functional'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="person_name python: 'Demo User Functional'">
<tal:block define="person_name python: 'Demo User Functional'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item_account" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>verifyTextNotPresent</td>
<td>demo_test_login_from_testSlapOSJSAccountLogin</td>
<td></td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_logout" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_logout" />
</tbody></table>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS JS Account Token</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test SlapOS JS Account Token</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="person_name python: 'Demo User Functional'">
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS JS Account Token</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="person_name python: 'Demo User Functional'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item_account" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b tal:content="python: 'Click on Token'"> Menu Item </b></td>
</tr>
</tr>
<tal:block define="menu_action python: 'Token'">
<tal:block define="menu_action python: 'Token'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
</tal:block>
<tal:block define="header python: 'Request New Token'; ">
<tal:block define="header python: 'Request New Token'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': 'Token is Requested.'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//label[text()="Your Token"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//label[text()="Your Token"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_erp5_field_string.html\')]//p[contains(text(), \'%s%02d%02d-\')]' % (DateTime().year(),DateTime().month(),DateTime().day())"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_erp5_field_string.html\')]//p[contains(text(), \'%s%02d%02d-\')]' % (DateTime().year(),DateTime().month(),DateTime().day())">
</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_erp5_field_string.html\')]//p[contains(text(), \'%s%02d%02d-\')]' % (DateTime().year(),DateTime().month(),DateTime().day())"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_erp5_field_string.html\')]//p[contains(text(), \'%s%02d%02d-\')]' % (DateTime().year(),DateTime().month(),DateTime().day())">
</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Request New Token'; ">
<tal:block define="header python: 'Request New Token'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_page_header" />
</tal:block>
</tal:block>
<tal:block define="header python: 'Your Account : Demo User Functional'; ">
<tal:block define="header python: 'Your Account : Demo User Functional'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_logout" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_logout" />
</tbody></table>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS Basic Navigation</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test RenderJS UI</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS Basic Navigation</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<!-- Access Menu -->
<tr>
<!-- Access Menu -->
<tr>
<td>click</td>
<td>//button[@data-i18n='Menu']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//button[@data-i18n='Menu']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n='Home']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n='Login Account']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n='Tickets']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n='Sites']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n='Projects']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n='Invoices']</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n='Services']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n='Servers']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n='Networks']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n='Logout']</td>
<td></td>
</tr>
</tr>
<tal:block define="menu_item python: 'Tickets'; header menu_item ">
<tal:block define="menu_item python: 'Tickets'; header menu_item ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
</tal:block>
</tal:block>
<tal:block define="menu_item python: 'Sites'; header menu_item">
<tal:block define="menu_item python: 'Sites'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
</tal:block>
</tal:block>
<tal:block define="menu_item python: 'Projects'; header menu_item">
<tal:block define="menu_item python: 'Projects'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
</tal:block>
</tal:block>
<tal:block define="menu_item python: 'Invoices'; header menu_item">
<tal:block define="menu_item python: 'Invoices'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
</tal:block>
</tal:block>
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
</tal:block>
</tal:block>
<tal:block define="menu_item python: 'Servers'; header menu_item">
<tal:block define="menu_item python: 'Servers'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
</tal:block>
</tal:block>
<tal:block define="menu_item python: 'Networks'; header menu_item">
<tal:block define="menu_item python: 'Networks'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b>Access modules and verify the redirect</b></td>
</tr>
<tr>
</tr>
<tr>
<td>openAndWait</td>
<td>${base_url}/</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>open</td>
<td>${base_url}/web_site_module/hostingjs/#/support_request_module</td>
<td></td>
</tr>
</tr>
<tal:block define="menu_item python: 'Tickets'; header menu_item">
<tal:block define="menu_item python: 'Tickets'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>openAndWait</td>
<td>${base_url}/</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>open</td>
<td>${base_url}/web_site_module/hostingjs/#/hosting_subscription_module</td>
<td></td>
</tr>
</tr>
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>openAndWait</td>
<td>${base_url}/</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>open</td>
<td>${base_url}/web_site_module/hostingjs/#/computer_module</td>
<td></td>
</tr>
</tr>
<tal:block define="menu_item python: 'Servers'; header menu_item">
<tal:block define="menu_item python: 'Servers'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>openAndWait</td>
<td>${base_url}/</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>open</td>
<td>${base_url}/web_site_module/hostingjs/#/accounting_module</td>
<td></td>
</tr>
</tr>
<tal:block define="menu_item python: 'Invoices'; header menu_item">
<tal:block define="menu_item python: 'Invoices'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>openAndWait</td>
<td>${base_url}/</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>open</td>
<td>${base_url}/web_site_module/hostingjs/#/project_module</td>
<td></td>
</tr>
</tr>
<tal:block define="menu_item python: 'Projects'; header menu_item">
<tal:block define="menu_item python: 'Projects'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>openAndWait</td>
<td>${base_url}/</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>open</td>
<td>${base_url}/web_site_module/hostingjs/#/computer_network_module</td>
<td></td>
</tr>
</tr>
<tal:block define="menu_item python: 'Networks'; header menu_item">
<tal:block define="menu_item python: 'Networks'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>openAndWait</td>
<td>${base_url}/</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>open</td>
<td>${base_url}/web_site_module/hostingjs/#/organisation_module</td>
<td></td>
</tr>
</tr>
<tal:block define="menu_item python: 'Sites'; header menu_item">
<tal:block define="menu_item python: 'Sites'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tal:block define="person_name python: 'Demo User Functional'">
<tal:block define="person_name python: 'Demo User Functional'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item_account" />
</tal:block>
</tal:block>
<tal:block define="header python: 'Your Account : Demo User Functional';">
<tal:block define="header python: 'Your Account : Demo User Functional';">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_logout" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_logout" />
</tbody></table>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS UI Network</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test RenderJS UI</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="menu_item python: 'Networks'; header menu_item">
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS UI Network</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="menu_item python: 'Networks'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tal:block define="title python: 'TEST-SLAPOSJS-NETWORK 0'; ">
<tal:block define="title python: 'TEST-SLAPOSJS-NETWORK 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/add_simple_with_title" />
</tal:block>
</tal:block>
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': 'New Network created.'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_content_loaded" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_content_loaded" />
<tal:block define="header python: 'Computer Network :TEST-SLAPOSJS-NETWORK 0'; ">
<tal:block define="header python: 'Computer Network :TEST-SLAPOSJS-NETWORK 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>type</td>
<td>//input[@id="title"]</td>
<td>TEST-SLAPOSJS-NETWORK 1</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/save" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/save" />
<!-- check site -->
<!-- check site -->
<!-- Broken history to return
<!-- Broken history to return
<tr>
<td>click</td>
<td>//a[@data-i18n="Site : TEST-SLAPOSJS-SET 0"]</td>
<td></td>
</tr>
-->
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: 'Networks'; header menu_item">
<tal:block define="menu_item python: 'Networks'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-NETWORK 1"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-NETWORK 1"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Computer Network :TEST-SLAPOSJS-NETWORK 1'; ">
<tal:block define="header python: 'Computer Network :TEST-SLAPOSJS-NETWORK 1'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tal:block tal:define="delete_configuration python: {'header_title': 'Delete Network: TEST-SLAPOSJS-NETWORK 1',
<tal:block tal:define="delete_configuration python: {'header_title': 'Delete Network: TEST-SLAPOSJS-NETWORK 1',
'notification_text': 'Network is Deleted.'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/delete_simple" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: 'Networks'; header menu_item">
<tal:block define="menu_item python: 'Networks'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_logout" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_logout" />
</tbody></table>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS Netowrk Shared By Organisation</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test RenderJS UI</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS Netowrk Shared By Organisation</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="document_title python: 'TEST-SLAPOSJS-ORGANISATION-TO-SHARE-NETWORK 0';">
<tal:block define="document_title python: 'TEST-SLAPOSJS-ORGANISATION-TO-SHARE-NETWORK 0';">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/create_user_organisation" />
</tal:block>
</tal:block>
<tal:block define="document_title python: 'TEST-SLAPOSJS-NETWORK-BY-ORGASNISATION 0';">
<tal:block define="document_title python: 'TEST-SLAPOSJS-NETWORK-BY-ORGASNISATION 0';">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/create_simple_network" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b tal:content="python: 'Wait index the documents'"> Menu Item </b></td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: 'Networks'; header menu_item">
<tal:block define="menu_item python: 'Networks'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-NETWORK-BY-ORGASNISATION 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-NETWORK-BY-ORGASNISATION 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Computer Network :TEST-SLAPOSJS-NETWORK-BY-ORGASNISATION 0'; ">
<tal:block define="header python: 'Computer Network :TEST-SLAPOSJS-NETWORK-BY-ORGASNISATION 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b tal:content="python: 'Transfer Network to a Organisation'"> Menu Item </b></td>
</tr>
</tr>
<tal:block tal:define="menu_action python: 'Transfer'">
<tal:block tal:define="menu_action python: 'Transfer'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
</tal:block>
<tal:block define="header python: 'Transfer Computer Network'; ">
<tal:block define="header python: 'Transfer Computer Network'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//select[@name="destination_section"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>select</td>
<td>//select[@name="destination_section"]</td>
<td>TEST-SLAPOSJS-ORGANISATION-TO-SHARE-NETWORK 0</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': 'Computer Network is transferred.'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: 'Networks'; header menu_item">
<tal:block define="menu_item python: 'Networks'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-NETWORK-BY-ORGASNISATION 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-NETWORK-BY-ORGASNISATION 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Computer Network :TEST-SLAPOSJS-NETWORK-BY-ORGASNISATION 0'; ">
<tal:block define="header python: 'Computer Network :TEST-SLAPOSJS-NETWORK-BY-ORGASNISATION 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForTextPresent</td>
<td>TEST-SLAPOSJS-ORGANISATION-TO-SHARE-NETWORK 0</td>
<td></td>
</tr>
</tr>
<tal:block define="person_name python: 'Demo User Functional'">
<tal:block define="person_name python: 'Demo User Functional'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item_account" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-ORGANISATION-TO-SHARE-NETWORK 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-ORGANISATION-TO-SHARE-NETWORK 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Organisation : TEST-SLAPOSJS-ORGANISATION-TO-SHARE-NETWORK 0'; ">
<tal:block define="header python: 'Organisation : TEST-SLAPOSJS-ORGANISATION-TO-SHARE-NETWORK 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Invite User/b> </td>
</tr>
......
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS JS Network Shared by Project</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test RenderJS UI</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS JS Network Shared by Project</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="document_title python: 'TEST-SLAPOSJS-PROJECT-TO-SHARE-NETWORK 0';">
<tal:block define="document_title python: 'TEST-SLAPOSJS-PROJECT-TO-SHARE-NETWORK 0';">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/create_simple_project" />
</tal:block>
</tal:block>
<tal:block define="document_title python: 'TEST-SLAPOSJS-NETWORK-BY-PROJECT 0';">
<tal:block define="document_title python: 'TEST-SLAPOSJS-NETWORK-BY-PROJECT 0';">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/create_simple_network" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b tal:content="python: 'Wait index the documents'"> Menu Item </b></td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: 'Networks'; header menu_item">
<tal:block define="menu_item python: 'Networks'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-NETWORK-BY-PROJECT 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-NETWORK-BY-PROJECT 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Computer Network :TEST-SLAPOSJS-NETWORK-BY-PROJECT 0'; ">
<tal:block define="header python: 'Computer Network :TEST-SLAPOSJS-NETWORK-BY-PROJECT 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b tal:content="python: 'Transfer Network to a Project'"> Menu Item </b></td>
</tr>
</tr>
<tal:block tal:define="menu_action python: 'Transfer'">
<tal:block tal:define="menu_action python: 'Transfer'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
</tal:block>
<tal:block define="header python: 'Transfer Computer Network'; ">
<tal:block define="header python: 'Transfer Computer Network'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//select[@name="destination_project"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>select</td>
<td>//select[@name="destination_project"]</td>
<td>TEST-SLAPOSJS-PROJECT-TO-SHARE-NETWORK 0</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': 'Computer Network is transferred.'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: 'Networks'; header menu_item">
<tal:block define="menu_item python: 'Networks'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-NETWORK-BY-PROJECT 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-NETWORK-BY-PROJECT 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Computer Network :TEST-SLAPOSJS-NETWORK-BY-PROJECT 0'; ">
<tal:block define="header python: 'Computer Network :TEST-SLAPOSJS-NETWORK-BY-PROJECT 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForTextPresent</td>
<td>TEST-SLAPOSJS-PROJECT-TO-SHARE-NETWORK 0</td>
<td></td>
</tr>
</tr>
<tal:block define="menu_item python: 'Projects'; header menu_item">
<tal:block define="menu_item python: 'Projects'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-PROJECT-TO-SHARE-NETWORK 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-PROJECT-TO-SHARE-NETWORK 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Project : TEST-SLAPOSJS-PROJECT-TO-SHARE-NETWORK 0'; ">
<tal:block define="header python: 'Project : TEST-SLAPOSJS-PROJECT-TO-SHARE-NETWORK 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Invite User/b> </td>
</tr>
......
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS JS Organisation</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test RenderJS UI</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="person_name python: 'Demo User Functional'">
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS JS Organisation</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="person_name python: 'Demo User Functional'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item_account" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Create an Organisation</b> </td>
</tr>
</tr>
<tal:block define="menu_action python: 'Add Organisation'">
<tal:block define="menu_action python: 'Add Organisation'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
</tal:block>
<tal:block define="header python: 'New Organisation'; ">
<tal:block define="header python: 'New Organisation'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Fill the form</b> </td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@name='title']</td>
<td>demo_test_organisation_from_testSlapOSJSOrganisation</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': 'New Organisation created.'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
</tal:block>
<tal:block define="header python: 'Organisation : demo_test_organisation_from_testSlapOSJSOrganisation'; ">
<tal:block define="header python: 'Organisation : demo_test_organisation_from_testSlapOSJSOrganisation'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_logout" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_logout" />
</tbody></table>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS JS Organisation Invitation</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test RenderJS UI</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS JS Organisation Invitation</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="person_name python: 'Demo User Functional'">
<tal:block define="person_name python: 'Demo User Functional'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item_account" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Create an Organisation</b> </td>
</tr>
</tr>
<tal:block define="menu_action python: 'Add Organisation'">
<tal:block define="menu_action python: 'Add Organisation'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
</tal:block>
<tal:block define="header python: 'New Organisation'; ">
<tal:block define="header python: 'New Organisation'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Fill the form</b> </td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@name='title']</td>
<td>demo_test_organisation_from_testSlapOSJSOrganisationInvitation</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': 'New Organisation created.'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
</tal:block>
<tal:block define="header python: 'Organisation : demo_test_organisation_from_testSlapOSJSOrganisationInvitation'; ">
<tal:block
define="header python: 'Organisation : demo_test_organisation_from_testSlapOSJSOrganisationInvitation'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Fill the form</b> </td>
</tr>
</tr>
<tal:block define="menu_action python: 'Invite User'">
<tal:block define="menu_action python: 'Invite User'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
</tal:block>
<tal:block define="header python: 'Generate New Invitation Link'; ">
<tal:block define="header python: 'Generate New Invitation Link'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block define="header python: 'Generate New Invitation Link'; ">
<tal:block define="header python: 'Generate New Invitation Link'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': 'New Invitation link generated.'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//p[@id="invitation_link"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>storeText</td>
<td>//p[@id="invitation_link"]</td>
<td>invitation_link</td>
</tr>
<tr>
</tr>
<tr>
<td>openAndWait</td>
<td>${invitation_link}</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Fail...'; ">
<tal:block define="header python: 'Fail...'; ">
<tr>
<td>waitForElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//span[@data-i18n=\'%s\']' % header"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//span[@data-i18n=\'%s\']' % header">
</td>
<td></td>
</tr>
<tr>
<td>assertElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//span[@data-i18n=\'%s\']' % header"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//span[@data-i18n=\'%s\']' % header">
</td>
<td></td>
</tr>
</tal:block>
</tal:block>
<tr>
<tr>
<td>assertTextPresent</td>
<td>Invitation Token cannot be used by the same user that generated the token!</td>
<td></td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login_with_another_user" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login_with_another_user" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="person_name python: 'Another Demo User Functional'">
<tal:block define="person_name python: 'Another Demo User Functional'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item_account" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>openAndWait</td>
<td>${invitation_link}</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Success...'; ">
<tal:block define="header python: 'Success...'; ">
<tr>
<td>waitForElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//span[@data-i18n=\'%s\']' % header"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//span[@data-i18n=\'%s\']' % header">
</td>
<td></td>
</tr>
<tr>
<td>assertElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//span[@data-i18n=\'%s\']' % header"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//span[@data-i18n=\'%s\']' % header">
</td>
<td></td>
</tr>
</tal:block>
</tal:block>
<tr>
<tr>
<td>assertTextPresent</td>
<td>You sucessfully join a new organisation: demo_test_organisation_from_testSlapOSJSOrganisationInvitation.
</td>
</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>click</td>
<td>//a[@data-i18n='Continue']</td>
<td></td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="person_name python: 'Another Demo User Functional'">
<tal:block define="person_name python: 'Another Demo User Functional'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item_account" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForTextPresent</td>
<td>demo_test_organisation_from_testSlapOSJSOrganisationInvitation</td>
<td></td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_logout" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_logout" />
</tbody></table>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS JS Project</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test RenderJS UI</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="document_title python: 'TEST-SLAPOSJS-PROJECT 0';">
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS JS Project</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="document_title python: 'TEST-SLAPOSJS-PROJECT 0';">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/create_simple_project" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>type</td>
<td>//textarea[@id="description"]</td>
<td>TEST-SLAPOSJS-PROJECT DESCRIPTION</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/save" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/save" />
<!-- check site -->
<!-- check site -->
<!-- Broken history to return
<!-- Broken history to return
<tr>
<td>click</td>
<td>//a[@data-i18n="Project : TEST-SLAPOSJS-PROJECT 0"]</td>
......@@ -38,50 +39,52 @@
</tr>
-->
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: 'Projects'; header menu_item">
<tal:block define="menu_item python: 'Projects'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-PROJECT 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-PROJECT 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Project : TEST-SLAPOSJS-PROJECT 0'; ">
<tal:block define="header python: 'Project : TEST-SLAPOSJS-PROJECT 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tal:block tal:define="delete_configuration python: {'header_title': 'Delete Project: TEST-SLAPOSJS-PROJECT 0',
<tal:block tal:define="delete_configuration python: {'header_title': 'Delete Project: TEST-SLAPOSJS-PROJECT 0',
'notification_text': 'Project is Deleted.'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/delete_simple" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: 'Projects'; header menu_item">
<tal:block define="menu_item python: 'Projects'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_logout" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_logout" />
</tbody></table>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS UI Project Invitation</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test Project Invitation</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS UI Project Invitation</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="document_title python: 'TEST-SLAPOSJS-PROJECT-INVITATION 0';">
<tal:block define="document_title python: 'TEST-SLAPOSJS-PROJECT-INVITATION 0';">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/create_simple_project" />
</tal:block>
</tal:block>
<tr>
<td colspan="3"><b> Invite User/b> </td>
</tr>
<tr>
<td colspan="3"><b> Invite User</b> </td>
</tr>
<tal:block define="menu_action python: 'Invite User'">
<tal:block define="menu_action python: 'Invite User'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
</tal:block>
<tal:block define="header python: 'Generate New Invitation Link'; ">
<tal:block define="header python: 'Generate New Invitation Link'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block define="header python: 'Generate New Invitation Link'; ">
<tal:block define="header python: 'Generate New Invitation Link'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': 'New Invitation link generated.'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//p[@id="invitation_link"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>storeText</td>
<td>//p[@id="invitation_link"]</td>
<td>invitation_link</td>
</tr>
<tr>
</tr>
<tr>
<td>openAndWait</td>
<td>${invitation_link}</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Fail...'; ">
<tal:block define="header python: 'Fail...'; ">
<tr>
<td>waitForElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//span[@data-i18n=\'%s\']' % header"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//span[@data-i18n=\'%s\']' % header">
</td>
<td></td>
</tr>
<tr>
<td>assertElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//span[@data-i18n=\'%s\']' % header"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//span[@data-i18n=\'%s\']' % header">
</td>
<td></td>
</tr>
</tal:block>
</tal:block>
<tr>
<tr>
<td>assertTextPresent</td>
<td>Invitation Token cannot be used by the same user that generated the token!</td>
<td></td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login_with_another_user" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login_with_another_user" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="menu_item python: 'Projects'; header menu_item">
<tal:block define="menu_item python: 'Projects'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>openAndWait</td>
<td>${invitation_link}</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Success...'; ">
<tal:block define="header python: 'Success...'; ">
<tr>
<td>waitForElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//span[@data-i18n=\'%s\']' % header"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//span[@data-i18n=\'%s\']' % header">
</td>
<td></td>
</tr>
<tr>
<td>assertElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//span[@data-i18n=\'%s\']' % header"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//span[@data-i18n=\'%s\']' % header">
</td>
<td></td>
</tr>
</tal:block>
</tal:block>
<tr>
<tr>
<td>assertTextPresent</td>
<td>You sucessfully join a new project: TEST-SLAPOSJS-PROJECT-INVITATION 0.
</td>
</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>click</td>
<td>//a[@data-i18n='Continue']</td>
<td></td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: 'Projects'; header menu_item">
<tal:block define="menu_item python: 'Projects'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForTextPresent</td>
<td>TEST-SLAPOSJS-PROJECT-INVITATION 0</td>
<td></td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_logout" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_logout" />
</tbody></table>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS JS Server</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test RenderJS UI</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS JS Server</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="document_title python: 'TEST-SLAPOSJS-COMPUTER 0';">
<tal:block define="document_title python: 'TEST-SLAPOSJS-COMPUTER 0';">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/create_simple_computer" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: 'Servers'; header menu_item">
<tal:block define="menu_item python: 'Servers'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-COMPUTER 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-COMPUTER 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Computer: TEST-SLAPOSJS-COMPUTER 0'; ">
<tal:block define="header python: 'Computer: TEST-SLAPOSJS-COMPUTER 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Supply a Software </b></td>
</tr>
</tr>
<tal:block define="menu_action python: 'Supply'">
<tal:block define="menu_action python: 'Supply'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Select a Software Product</b></td>
</tr>
</tr>
<tal:block define="header python: '1/3 Select one Software'; ">
<tal:block define="header python: '1/3 Select one Software'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_field_listbox.html')]//h1[contains(text(), 'Software Products')]</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_field_listbox.html')]//h1[contains(text(), 'Software
Products')]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_field_listbox.html')]//h1[contains(text(), 'Software Products')]</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_field_listbox.html')]//h1[contains(text(), 'Software
Products')]</td>
<td></td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_listbox_loaded" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_listbox_loaded" />
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//td/a[text()="Frontend"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//td/a[text()="Frontend"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td colspan="3"><b> Select a Software Release</b></td>
</tr>
</tr>
<tal:block define="header python: '2/3 Select one Release'; ">
<tal:block define="header python: '2/3 Select one Release'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_field_listbox.html')]//h1[contains(text(), 'Software Releases')]</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_field_listbox.html')]//h1[contains(text(), 'Software
Releases')]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_field_listbox.html')]//h1[contains(text(), 'Software Releases')]</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_field_listbox.html')]//h1[contains(text(), 'Software
Releases')]</td>
<td></td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_listbox_loaded" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_listbox_loaded" />
<tr>
<tr>
<td>click</td>
<td>//td/a[text()="Frontend"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//label[text()="Software Release to be Installed"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//label[text()="Target Computer Title"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//p[text()="TEST-SLAPOSJS-COMPUTER 0"]</td>
<td></td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': 'New Software Installation created.'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
</tal:block>
<tal:block define="header python: 'Software Installation : Frontend'; ">
<tal:block define="header python: 'Software Installation : Frontend'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-COMPUTER 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-COMPUTER 0"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>pause</td>
<td>5000</td>
<td>5000</td>
</tr>
</tr>
<tal:block define="header python: 'Computer: TEST-SLAPOSJS-COMPUTER 0'; ">
<tal:block define="header python: 'Computer: TEST-SLAPOSJS-COMPUTER 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: 'Servers'; header menu_item">
<tal:block define="menu_item python: 'Servers'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-COMPUTER 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-COMPUTER 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Computer: TEST-SLAPOSJS-COMPUTER 0'; ">
<tal:block define="header python: 'Computer: TEST-SLAPOSJS-COMPUTER 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>click</td>
<td>//th/a[text()="Software Release"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//td/a[contains(text(), "Frontend (0.1)")]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//td/a[contains(text(), "Frontend (0.1)")]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>click</td>
<td>//td/a[contains(text(), "Frontend (0.1)")]</td>
<td></td>
</tr>
<tal:block define="header python: 'Software Installation : Frontend'; ">
</tr>
<tal:block define="header python: 'Software Installation : Frontend'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tal:block define="menu_action python: 'Destroy'">
<tal:block define="menu_action python: 'Destroy'">
<tr>
<td colspan="3"><b tal:content="python: 'Click on %s' % menu_action"> Menu Item </b></td>
</tr>
<tr>
<td>waitForElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action">
</td>
<td></td>
</tr>
<tr>
<td>assertElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action">
</td>
<td></td>
</tr>
<tr>
<td>click</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action">
</td>
<td></td>
</tr>
</tal:block>
</tal:block>
<tal:block define="header python: 'Destroy Software Installation'; ">
<tal:block define="header python: 'Destroy Software Installation'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': 'You sucessfully request destruction.'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-COMPUTER 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-COMPUTER 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Computer: TEST-SLAPOSJS-COMPUTER 0'; ">
<tal:block define="header python: 'Computer: TEST-SLAPOSJS-COMPUTER 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b>Try to request a new Certificate</b></td>
</tr>
</tr>
<tal:block define="menu_action python: 'Request Certificate'">
<tal:block define="menu_action python: 'Request Certificate'">
<tr>
<td colspan="3"><b tal:content="python: 'Click on %s' % menu_action"> Menu Item </b></td>
</tr>
<tr>
<td>waitForElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action">
</td>
<td></td>
</tr>
<tr>
<td>assertElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action">
</td>
<td></td>
</tr>
<tr>
<td>click</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action">
</td>
<td></td>
</tr>
</tal:block>
</tal:block>
<tal:block define="header python: 'Request New Certificate'; ">
<tal:block define="header python: 'Request New Certificate'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block
tal:define="notification_configuration python: {'class': 'success',
'text': 'This computer already has one certificate, please revoke it before request a new one..'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
</tal:block>
<tal:block define="header python: 'Request New Certificate'; ">
<tal:block define="header python: 'Request New Certificate'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_page_header" />
</tal:block>
</tal:block>
<tal:block define="header python: 'Computer: TEST-SLAPOSJS-COMPUTER 0'; ">
<tal:block define="header python: 'Computer: TEST-SLAPOSJS-COMPUTER 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Revoke Certificate</b></td>
</tr>
</tr>
<tal:block define="menu_action python: 'Revoke Certificate'">
<tal:block define="menu_action python: 'Revoke Certificate'">
<tr>
<td colspan="3"><b tal:content="python: 'Click on %s' % menu_action"> Menu Item </b></td>
</tr>
<tr>
<td>waitForElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action">
</td>
<td></td>
</tr>
<tr>
<td>assertElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action">
</td>
<td></td>
</tr>
<tr>
<td>click</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action">
</td>
<td></td>
</tr></tal:block>
</tr>
</tal:block>
<tal:block define="header python: 'Revoke Computer Certificate'; ">
<tal:block define="header python: 'Revoke Computer Certificate'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': 'Certificate is Revoked.'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Try again Request Certificate</b></td>
</tr>
</tr>
<tal:block define="header python: 'Computer: TEST-SLAPOSJS-COMPUTER 0'; ">
<tal:block define="header python: 'Computer: TEST-SLAPOSJS-COMPUTER 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tal:block define="menu_action python: 'Request Certificate'">
<tr>
<tal:block define="menu_action python: 'Request Certificate'">
<tr>
<td colspan="3"><b tal:content="python: 'Click on %s' % menu_action"> Menu Item </b></td>
</tr>
<tr>
<td>waitForElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action">
</td>
<td></td>
</tr>
<tr>
<td>assertElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action">
</td>
<td></td>
</tr>
<tr>
<td>click</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action">
</td>
<td></td>
</tr>
</tal:block>
</tal:block>
<tal:block define="header python: 'Request New Certificate'; ">
<tal:block define="header python: 'Request New Certificate'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': 'Certificate is Requested.'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//textarea[@name="certificate"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//textarea[@name="key"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Request New Certificate'; ">
<tal:block define="header python: 'Request New Certificate'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_page_header" />
</tal:block>
</tal:block>
<tal:block define="header python: 'Computer: TEST-SLAPOSJS-COMPUTER 0'; ">
<tal:block define="header python: 'Computer: TEST-SLAPOSJS-COMPUTER 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Update Allocation Scope</b></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//select[@id="allocation_scope"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>select</td>
<td>//select[@id="allocation_scope"]</td>
<td>Open for Friends only</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/save" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/save" />
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//textarea[@id="subject_list"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//textarea[@id="subject_list"]</td>
<td>demo@user.com</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/save" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/save" />
<tr>
<tr>
<td>assertValue</td>
<td>//textarea[@id="subject_list"]</td>
<td>demo@user.com</td>
</tr>
</tr>
<tal:block define="menu_item python: 'Servers'; header menu_item">
<tal:block define="menu_item python: 'Servers'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: 'Servers'; header menu_item">
<tal:block define="menu_item python: 'Servers'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-COMPUTER 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-COMPUTER 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Computer: TEST-SLAPOSJS-COMPUTER 0'; ">
<tal:block define="header python: 'Computer: TEST-SLAPOSJS-COMPUTER 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Update Allocation Scope</b></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//select[@id="allocation_scope"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>select</td>
<td>//select[@id="allocation_scope"]</td>
<td>Closed forever</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/save" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/save" />
<tal:block define="menu_item python: 'Servers'; header menu_item">
<tal:block define="menu_item python: 'Servers'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: 'Servers'; header menu_item">
<tal:block define="menu_item python: 'Servers'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_logout" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_logout" />
</tbody></table>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS JS Sercer Shared by Organisation</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test RenderJS UI</td></tr>
</thead><tbody>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS JS Sercer Shared by Organisation</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="document_title python: 'TEST-SLAPOSJS-ORGANISATION-TO-SHARE-COMPUTER 0';">
<tal:block define="document_title python: 'TEST-SLAPOSJS-ORGANISATION-TO-SHARE-COMPUTER 0';">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/create_user_organisation" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="document_title python: 'TEST-SLAPOSJS-COMPUTER-SHARED-BY-ORGANISATION 0';">
<tal:block define="document_title python: 'TEST-SLAPOSJS-COMPUTER-SHARED-BY-ORGANISATION 0';">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/create_simple_computer" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: 'Servers'; header menu_item">
<tal:block define="menu_item python: 'Servers'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-COMPUTER-SHARED-BY-ORGANISATION 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-COMPUTER-SHARED-BY-ORGANISATION 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n="Computer: TEST-SLAPOSJS-COMPUTER-SHARED-BY-ORGANISATION 0"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td colspan="3"><b tal:content="python: 'Transfer Computer to a Organisation'"> Menu Item </b></td>
</tr>
</tr>
<tal:block tal:define="menu_action python: 'Transfer'">
<tal:block tal:define="menu_action python: 'Transfer'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
</tal:block>
<tal:block define="header python: 'Transfer Computer'; ">
<tal:block define="header python: 'Transfer Computer'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//select[@name="destination_section"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>select</td>
<td>//select[@name="destination_section"]</td>
<td>TEST-SLAPOSJS-ORGANISATION-TO-SHARE-COMPUTER 0</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': 'Computer is transferred.'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: 'Servers'; header menu_item">
<tal:block define="menu_item python: 'Servers'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-COMPUTER-SHARED-BY-ORGANISATION 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-COMPUTER-SHARED-BY-ORGANISATION 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Computer: TEST-SLAPOSJS-COMPUTER-SHARED-BY-ORGANISATION 0'; ">
<tal:block define="header python: 'Computer: TEST-SLAPOSJS-COMPUTER-SHARED-BY-ORGANISATION 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForTextPresent</td>
<td>TEST-SLAPOSJS-COMPUTER-SHARED-BY-ORGANISATION 0</td>
<td></td>
</tr>
</tr>
<tal:block define="person_name python: 'Demo User Functional'">
<tal:block define="person_name python: 'Demo User Functional'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item_account" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-ORGANISATION-TO-SHARE-COMPUTER 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-ORGANISATION-TO-SHARE-COMPUTER 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Organisation : TEST-SLAPOSJS-ORGANISATION-TO-SHARE-COMPUTER 0'; ">
<tal:block define="header python: 'Organisation : TEST-SLAPOSJS-ORGANISATION-TO-SHARE-COMPUTER 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Invite User/b> </td>
</tr>
......
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS JS Server Shard by Project</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test RenderJS UI</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS JS Server Shard by Project</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="document_title python: 'TEST-SLAPOSJS-PROJECT-TO-SHARE-COMPUTER 0';">
<tal:block define="document_title python: 'TEST-SLAPOSJS-PROJECT-TO-SHARE-COMPUTER 0';">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/create_simple_project" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="document_title python: 'TEST-SLAPOSJS-COMPUTER-SHARED-BY-PROJECT 0';">
<tal:block define="document_title python: 'TEST-SLAPOSJS-COMPUTER-SHARED-BY-PROJECT 0';">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/create_simple_computer" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b tal:content="python: 'Transfer Computer to a Project'"> Menu Item </b></td>
</tr>
</tr>
<tal:block tal:define="menu_action python: 'Transfer'">
<tal:block tal:define="menu_action python: 'Transfer'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
</tal:block>
<tal:block define="header python: 'Transfer Computer'; ">
<tal:block define="header python: 'Transfer Computer'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//select[@name="destination_project"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>select</td>
<td>//select[@name="destination_project"]</td>
<td>TEST-SLAPOSJS-PROJECT-TO-SHARE-COMPUTER 0</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': 'Computer is transferred.'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: 'Servers'; header menu_item">
<tal:block define="menu_item python: 'Servers'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-COMPUTER-SHARED-BY-PROJECT 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-COMPUTER-SHARED-BY-PROJECT 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Computer: TEST-SLAPOSJS-COMPUTER-SHARED-BY-PROJECT 0'; ">
<tal:block define="header python: 'Computer: TEST-SLAPOSJS-COMPUTER-SHARED-BY-PROJECT 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForTextPresent</td>
<td>TEST-SLAPOSJS-PROJECT-TO-SHARE-COMPUTER 0</td>
<td></td>
</tr>
</tr>
<tal:block define="menu_item python: 'Projects'; header menu_item">
<tal:block define="menu_item python: 'Projects'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-PROJECT-TO-SHARE-COMPUTER 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-PROJECT-TO-SHARE-COMPUTER 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Project : TEST-SLAPOSJS-PROJECT-TO-SHARE-COMPUTER 0'; ">
<tal:block define="header python: 'Project : TEST-SLAPOSJS-PROJECT-TO-SHARE-COMPUTER 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Invite User/b> </td>
</tr>
......
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS JS Server Token</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test RenderJS UI</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="menu_item python: 'Servers'; header menu_item">
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS JS Server Token</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="menu_item python: 'Servers'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b tal:content="python: 'Click on Token'"> Menu Item </b></td>
</tr>
</tr>
<tal:block define="menu_action python: 'Token'">
<tal:block define="menu_action python: 'Token'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
</tal:block>
<tal:block define="header python: 'Request New Token'; ">
<tal:block define="header python: 'Request New Token'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': 'Token is Requested.'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//label[text()="Your Token"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//label[text()="Your Token"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_erp5_field_string.html\')]//p[contains(text(), \'%s%02d%02d-\')]' % (DateTime().year(),DateTime().month(),DateTime().day())"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_erp5_field_string.html\')]//p[contains(text(), \'%s%02d%02d-\')]' % (DateTime().year(),DateTime().month(),DateTime().day())">
</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_erp5_field_string.html\')]//p[contains(text(), \'%s%02d%02d-\')]' % (DateTime().year(),DateTime().month(),DateTime().day())"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_erp5_field_string.html\')]//p[contains(text(), \'%s%02d%02d-\')]' % (DateTime().year(),DateTime().month(),DateTime().day())">
</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Request New Token'; ">
<tal:block define="header python: 'Request New Token'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_erp5_field_listbox.html\')]//h1[contains(text(), \'Servers\')]'"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_erp5_field_listbox.html\')]//h1[contains(text(), \'Servers\')]'">
</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_erp5_field_listbox.html\')]//h1[contains(text(), \'Servers\')]'"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_erp5_field_listbox.html\')]//h1[contains(text(), \'Servers\')]'">
</td>
<td></td>
</tr>
</tr>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_logout" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_logout" />
</tbody></table>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS JS Service</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test RenderJS UI</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="menu_item python: 'Services'; header menu_item">
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS JS Service</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tal:block define="menu_action python: 'Add'">
<tal:block define="menu_action python: 'Add'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Request a Software </b></td>
</tr>
</tr>
<tal:block define="software_product python: 'Frontend'">
<tal:block define="software_product python: 'Frontend'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/select_software_product" />
</tal:block>
</tal:block>
<tal:block define="software_release python: 'Frontend'">
<tal:block define="software_release python: 'Frontend'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/select_software_release" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Fill Request form </b></td>
</tr>
</tr>
<tal:block define="header python: '3/3 Request Service: Frontend'; ">
<tal:block define="header python: '3/3 Request Service: Frontend'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@id="title"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@id="title"]</td>
<td>TEST-SLAPOSJS-SERVICE-FRONTEND 0</td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]
</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]
</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>select</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>Custom Personal</td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@name="//public-ipv4"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@name="//public-ipv4"]</td>
<td>http://www.erp5.com</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': 'New service created.'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-SERVICE-FRONTEND 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-SERVICE-FRONTEND 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n="Hosting Subscription: TEST-SLAPOSJS-SERVICE-FRONTEND 0"]</td>
<td></td>
</tr>
</tr>
<!-- Update Parameters -->
<!-- Update Add Ticket -->
<!-- Update Stop -->
<!-- Update Start -->
<!-- Update Parameters -->
<!-- Update Add Ticket -->
<!-- Update Stop -->
<!-- Update Start -->
<tal:block define="menu_action python: 'Destroy'">
<tal:block define="menu_action python: 'Destroy'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
</tal:block>
<tal:block define="header python: 'Destroy Hosting Subscription: TEST-SLAPOSJS-SERVICE-FRONTEND 0'; ">
<tal:block define="header python: 'Destroy Hosting Subscription: TEST-SLAPOSJS-SERVICE-FRONTEND 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': 'Service is Destroyed.'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_logout" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_logout" />
</tbody></table>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS JS Service Duplicated Request</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test RenderJS UI</td></tr>
</thead><tbody>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS JS Service Duplicated Request</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tal:block define="menu_action python: 'Add'">
<tal:block define="menu_action python: 'Add'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Request a Software </b></td>
</tr>
</tr>
<tal:block define="software_product python: 'Frontend'">
<tal:block define="software_product python: 'Frontend'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/select_software_product" />
</tal:block>
</tal:block>
<tal:block define="software_release python: 'Frontend'">
<tal:block define="software_release python: 'Frontend'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/select_software_release" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Fill Request form </b></td>
</tr>
</tr>
<tal:block define="header python: '3/3 Request Service: Frontend'; ">
<tal:block define="header python: '3/3 Request Service: Frontend'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@id="title"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@id="title"]</td>
<td>TEST-SLAPOSJS-SERVICE-FRONTEND 0</td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]
</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]
</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>select</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>Custom Personal</td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@name="//public-ipv4"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@name="//public-ipv4"]</td>
<td>http://www.erp5.com</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': 'New service created.'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-SERVICE-FRONTEND 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="menu_action python: 'Add'">
<tal:block define="menu_action python: 'Add'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Request a Software </b></td>
</tr>
</tr>
<tal:block define="software_product python: 'Frontend'">
<tal:block define="software_product python: 'Frontend'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/select_software_product" />
</tal:block>
</tal:block>
<tal:block define="software_release python: 'Frontend'">
<tal:block define="software_release python: 'Frontend'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/select_software_release" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Fill Request form </b></td>
</tr>
</tr>
<tal:block define="header python: '3/3 Request Service: Frontend'; ">
<tal:block define="header python: '3/3 Request Service: Frontend'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@id="title"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@id="title"]</td>
<td>TEST-SLAPOSJS-SERVICE-FRONTEND 0</td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]
</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]
</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>select</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>Custom Personal</td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@name="//public-ipv4"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@name="//public-ipv4"]</td>
<td>http://www.erp5.com</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'error',
<tal:block tal:define="notification_configuration python: {'class': 'error',
'text': 'A service with this title already exists.'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
</tal:block>
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-SERVICE-FRONTEND 0"]</td>
<td></td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_logout" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_logout" />
</tbody></table>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS JS UI Sevice JSON Serialisation </title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test RenderJS UI</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="menu_item python: 'Services'; header menu_item">
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">TTest SlapOS JS UI Sevice JSON Serialisation</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tal:block define="menu_action python: 'Add'">
<tal:block define="menu_action python: 'Add'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Request a Software </b></td>
</tr>
</tr>
<tal:block define="software_product python: 'KVM'">
<tal:block define="software_product python: 'KVM'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/select_software_product" />
</tal:block>
</tal:block>
<tal:block define="software_release python: 'KVM'">
<tal:block define="software_release python: 'KVM'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/select_software_release" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Fill Request form </b></td>
</tr>
</tr>
<tal:block define="header python: '3/3 Request Service: KVM'; ">
<tal:block define="header python: '3/3 Request Service: KVM'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@id="title"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@id="title"]</td>
<td>TEST-SLAPOSJS-SERVICE-KVM-CLUSTER 0</td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Cluster"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Cluster"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Cluster"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Cluster"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>select</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>Cluster</td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@name="ADD//kvm-partition-dict"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@name="ADD//kvm-partition-dict"]</td>
<td>KVM-CLUSTER-INSTANCE-0</td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//button[@name="//kvm-partition-dict"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>click</td>
<td>//button[@name="//kvm-partition-dict"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@name="//kvm-partition-dict/KVM-CLUSTER-INSTANCE-0/disk-size"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@name="//kvm-partition-dict/KVM-CLUSTER-INSTANCE-0/disk-size"]</td>
<td>10</td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@name="ADD//kvm-partition-dict"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@name="ADD//kvm-partition-dict"]</td>
<td>KVM-CLUSTER-INSTANCE-1</td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//button[@name="//kvm-partition-dict"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>click</td>
<td>//button[@name="//kvm-partition-dict"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@name="//kvm-partition-dict/KVM-CLUSTER-INSTANCE-1/disk-size"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@name="//kvm-partition-dict/KVM-CLUSTER-INSTANCE-1/disk-size"]</td>
<td>20</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': 'New service created.'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-SERVICE-KVM-CLUSTER 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-SERVICE-KVM-CLUSTER 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n="Hosting Subscription: TEST-SLAPOSJS-SERVICE-KVM-CLUSTER 0"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@name="//kvm-partition-dict/KVM-CLUSTER-INSTANCE-1/disk-size"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>assertElementPresent</td>
<td>//input[@name="//kvm-partition-dict/KVM-CLUSTER-INSTANCE-1/disk-size"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@name="//kvm-partition-dict/KVM-CLUSTER-INSTANCE-0/disk-size"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>assertElementPresent</td>
<td>//input[@name="//kvm-partition-dict/KVM-CLUSTER-INSTANCE-0/disk-size"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//span[@class="bt_close CLOSE//kvm-partition-dict/KVM-CLUSTER-INSTANCE-1"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>click</td>
<td>//span[@class="bt_close CLOSE//kvm-partition-dict/KVM-CLUSTER-INSTANCE-1"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>pause</td>
<td>1000</td>
<td>2000</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_save" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_save" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': 'Data updated.'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
</tal:block>
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-SERVICE-KVM-CLUSTER 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-SERVICE-KVM-CLUSTER 0"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n="Hosting Subscription: TEST-SLAPOSJS-SERVICE-KVM-CLUSTER 0"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@name="//kvm-partition-dict/KVM-CLUSTER-INSTANCE-0/disk-size"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>assertElementPresent</td>
<td>//input[@name="//kvm-partition-dict/KVM-CLUSTER-INSTANCE-0/disk-size"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>assertElementNotPresent</td>
<td>//input[@name="//kvm-partition-dict/KVM-CLUSTER-INSTANCE-1/disk-size"]</td>
<td></td>
</tr>
</tr>
<tal:block define="menu_action python: 'Destroy'">
<tal:block define="menu_action python: 'Destroy'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
</tal:block>
<tal:block define="header python: 'Destroy Hosting Subscription: TEST-SLAPOSJS-SERVICE-KVM-CLUSTER 0'; ">
<tal:block define="header python: 'Destroy Hosting Subscription: TEST-SLAPOSJS-SERVICE-KVM-CLUSTER 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': 'Service is Destroyed.'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_logout" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_logout" />
</tbody></table>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS JS UI Service Shared by Organisation</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test RenderJS UI</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS JS UI Service Shared by Organisation</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="document_title python: 'TEST-SLAPOSJS-ORGANISATION-TO-SHARE-SERVICE 0';">
<tal:block define="document_title python: 'TEST-SLAPOSJS-ORGANISATION-TO-SHARE-SERVICE 0';">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/create_user_organisation" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tal:block define="menu_action python: 'Add'">
<tal:block define="menu_action python: 'Add'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Request a Software </b></td>
</tr>
</tr>
<tr>
<tr>
<td colspan="3"><b> Select a Software Product</b></td>
</tr>
</tr>
<tal:block define="header python: '1/3 Select one Software'; ">
<tal:block define="header python: '1/3 Select one Software'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_field_listbox.html')]//h1[contains(text(), 'Software Products')]</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_field_listbox.html')]//h1[contains(text(), 'Software
Products')]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_field_listbox.html')]//h1[contains(text(), 'Software Products')]</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_field_listbox.html')]//h1[contains(text(), 'Software
Products')]</td>
<td></td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_listbox_loaded" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_listbox_loaded" />
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//td/a[text()="Frontend"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//td/a[text()="Frontend"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td colspan="3"><b> Select a Software Release</b></td>
</tr>
</tr>
<tal:block define="header python: '2/3 Select one Release'; ">
<tal:block define="header python: '2/3 Select one Release'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_field_listbox.html')]//h1[contains(text(), 'Software Releases')]</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_field_listbox.html')]//h1[contains(text(), 'Software
Releases')]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_field_listbox.html')]//h1[contains(text(), 'Software Releases')]</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_field_listbox.html')]//h1[contains(text(), 'Software
Releases')]</td>
<td></td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_listbox_loaded" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_listbox_loaded" />
<tr>
<tr>
<td>click</td>
<td>//td/a[text()="Frontend"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td colspan="3"><b> Fill Request form </b></td>
</tr>
</tr>
<tal:block define="header python: '3/3 Request Service: Frontend'; ">
<tal:block define="header python: '3/3 Request Service: Frontend'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@id="title"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@id="title"]</td>
<td>TEST-SLAPOSJS-SERVICE-SHARED-BY-ORGANISATION 0</td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]
</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]
</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>select</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>Custom Personal</td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@name="//public-ipv4"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@name="//public-ipv4"]</td>
<td>http://www.erp5.com</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': 'New service created.'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-SERVICE-SHARED-BY-ORGANISATION 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-SERVICE-SHARED-BY-ORGANISATION 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n="Hosting Subscription: TEST-SLAPOSJS-SERVICE-SHARED-BY-ORGANISATION 0"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td colspan="3"><b tal:content="python: 'Transfer Service to a Organisation'"> Menu Item </b></td>
</tr>
</tr>
<tal:block tal:define="menu_action python: 'Transfer'">
<tal:block tal:define="menu_action python: 'Transfer'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
</tal:block>
<tal:block define="header python: 'Transfer Service'; ">
<tal:block define="header python: 'Transfer Service'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//select[@name="destination"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>select</td>
<td>//select[@name="destination"]</td>
<td>TEST-SLAPOSJS-ORGANISATION-TO-SHARE-SERVICE 0</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': 'Service is transferred.'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-SERVICE-SHARED-BY-ORGANISATION 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-SERVICE-SHARED-BY-ORGANISATION 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Hosting Subscription: TEST-SLAPOSJS-SERVICE-SHARED-BY-ORGANISATION 0'; ">
<tal:block define="header python: 'Hosting Subscription: TEST-SLAPOSJS-SERVICE-SHARED-BY-ORGANISATION 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForTextPresent</td>
<td>TEST-SLAPOSJS-ORGANISATION-TO-SHARE-SERVICE 0</td>
<td></td>
</tr>
</tr>
<tal:block define="person_name python: 'Demo User Functional'">
<tal:block define="person_name python: 'Demo User Functional'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item_account" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-ORGANISATION-TO-SHARE-SERVICE 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-ORGANISATION-TO-SHARE-SERVICE 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Organisation : TEST-SLAPOSJS-ORGANISATION-TO-SHARE-SERVICE 0'; ">
<tal:block define="header python: 'Organisation : TEST-SLAPOSJS-ORGANISATION-TO-SHARE-SERVICE 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Invite User/b> </td>
</tr>
......
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS JS UI Service Shared By Project</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test RenderJS UI</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS JS UI Service Shared By Project</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="document_title python: 'TEST-SLAPOSJS-PROJECT-TO-SHARE-SERVICE 0';">
<tal:block define="document_title python: 'TEST-SLAPOSJS-PROJECT-TO-SHARE-SERVICE 0';">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/create_simple_project" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tal:block define="menu_action python: 'Add'">
<tal:block define="menu_action python: 'Add'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Request a Software </b></td>
</tr>
</tr>
<tr>
<tr>
<td colspan="3"><b> Select a Software Product</b></td>
</tr>
</tr>
<tal:block define="header python: '1/3 Select one Software'; ">
<tal:block define="header python: '1/3 Select one Software'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_field_listbox.html')]//h1[contains(text(), 'Software Products')]</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_field_listbox.html')]//h1[contains(text(), 'Software
Products')]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_field_listbox.html')]//h1[contains(text(), 'Software Products')]</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_field_listbox.html')]//h1[contains(text(), 'Software
Products')]</td>
<td></td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_listbox_loaded" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_listbox_loaded" />
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//td/a[text()="Frontend"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//td/a[text()="Frontend"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td colspan="3"><b> Select a Software Release</b></td>
</tr>
</tr>
<tal:block define="header python: '2/3 Select one Release'; ">
<tal:block define="header python: '2/3 Select one Release'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_field_listbox.html')]//h1[contains(text(), 'Software Releases')]</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_field_listbox.html')]//h1[contains(text(), 'Software
Releases')]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_field_listbox.html')]//h1[contains(text(), 'Software Releases')]</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_field_listbox.html')]//h1[contains(text(), 'Software
Releases')]</td>
<td></td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_listbox_loaded" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_listbox_loaded" />
<tr>
<tr>
<td>click</td>
<td>//td/a[text()="Frontend"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td colspan="3"><b> Fill Request form </b></td>
</tr>
</tr>
<tal:block define="header python: '3/3 Request Service: Frontend'; ">
<tal:block define="header python: '3/3 Request Service: Frontend'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@id="title"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@id="title"]</td>
<td>TEST-SLAPOSJS-SERVICE-SHARED-BY-PROJECT 0</td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]
</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]
</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>select</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>Custom Personal</td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@name="//public-ipv4"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@name="//public-ipv4"]</td>
<td>http://www.erp5.com</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': 'New service created.'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-SERVICE-SHARED-BY-PROJECT 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-SERVICE-SHARED-BY-PROJECT 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n="Hosting Subscription: TEST-SLAPOSJS-SERVICE-SHARED-BY-PROJECT 0"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td colspan="3"><b tal:content="python: 'Transfer Service to a Project'"> Menu Item </b></td>
</tr>
</tr>
<tal:block tal:define="menu_action python: 'Transfer'">
<tal:block tal:define="menu_action python: 'Transfer'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
</tal:block>
<tal:block define="header python: 'Transfer Service'; ">
<tal:block define="header python: 'Transfer Service'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//select[@name="destination_project"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>select</td>
<td>//select[@name="destination_project"]</td>
<td>TEST-SLAPOSJS-PROJECT-TO-SHARE-SERVICE 0</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': 'Service is transferred.'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-SERVICE-SHARED-BY-PROJECT 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-SERVICE-SHARED-BY-PROJECT 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Hosting Subscription: TEST-SLAPOSJS-SERVICE-SHARED-BY-PROJECT 0'; ">
<tal:block define="header python: 'Hosting Subscription: TEST-SLAPOSJS-SERVICE-SHARED-BY-PROJECT 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForTextPresent</td>
<td>TEST-SLAPOSJS-SERVICE-SHARED-BY-PROJECT 0</td>
<td></td>
</tr>
</tr>
<tal:block define="menu_item python: 'Projects'; header menu_item">
<tal:block define="menu_item python: 'Projects'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-PROJECT-TO-SHARE-SERVICE 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-PROJECT-TO-SHARE-SERVICE 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Project : TEST-SLAPOSJS-PROJECT-TO-SHARE-SERVICE 0'; ">
<tal:block define="header python: 'Project : TEST-SLAPOSJS-PROJECT-TO-SHARE-SERVICE 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<td colspan="3"><b> Invite User/b> </td>
</tr>
<tr>
<td colspan="3"><b> Invite User</b> </td>
</tr>
<tal:block define="menu_action python: 'Invite User'">
<tal:block define="menu_action python: 'Invite User'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
</tal:block>
<tal:block define="header python: 'Generate New Invitation Link'; ">
<tal:block define="header python: 'Generate New Invitation Link'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block define="header python: 'Generate New Invitation Link'; ">
<tal:block define="header python: 'Generate New Invitation Link'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': 'New Invitation link generated.'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//p[@id="invitation_link"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>storeText</td>
<td>//p[@id="invitation_link"]</td>
<td>invitation_link</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login_with_another_user" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login_with_another_user" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="menu_item python: 'Projects'; header menu_item">
<tal:block define="menu_item python: 'Projects'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>openAndWait</td>
<td>${invitation_link}</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Success...'; ">
<tal:block define="header python: 'Success...'; ">
<tr>
<td>waitForElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//span[@data-i18n=\'%s\']' % header"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//span[@data-i18n=\'%s\']' % header">
</td>
<td></td>
</tr>
<tr>
<td>assertElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//span[@data-i18n=\'%s\']' % header"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//span[@data-i18n=\'%s\']' % header">
</td>
<td></td>
</tr>
</tal:block>
</tal:block>
<tr>
<tr>
<td>assertTextPresent</td>
<td>You sucessfully join a new project: TEST-SLAPOSJS-PROJECT-TO-SHARE-SERVICE 0.
</td>
</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>click</td>
<td>//a[@data-i18n='Continue']</td>
<td></td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: 'Projects'; header menu_item">
<tal:block define="menu_item python: 'Projects'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForTextPresent</td>
<td>TEST-SLAPOSJS-PROJECT-TO-SHARE-SERVICE 0</td>
<td></td>
</tr>
</tr>
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-SERVICE-SHARED-BY-PROJECT 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-SERVICE-SHARED-BY-PROJECT 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Hosting Subscription: TEST-SLAPOSJS-SERVICE-SHARED-BY-PROJECT 0'; ">
<tal:block define="header python: 'Hosting Subscription: TEST-SLAPOSJS-SERVICE-SHARED-BY-PROJECT 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_logout" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_logout" />
</tbody></table>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS JS UI Service Slave</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test RenderJS UI</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="menu_item python: 'Services'; header menu_item">
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS JS UI Service Slave</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tal:block define="menu_action python: 'Add'">
<tal:block define="menu_action python: 'Add'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Request a Software </b></td>
</tr>
</tr>
<tal:block define="software_product python: 'Frontend'">
<tal:block define="software_product python: 'Frontend'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/select_software_product" />
</tal:block>
</tal:block>
<tal:block define="software_release python: 'Frontend'">
<tal:block define="software_release python: 'Frontend'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/select_software_release" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Fill Request form </b></td>
</tr>
</tr>
<tal:block define="header python: '3/3 Request Service: Frontend'; ">
<tal:block define="header python: '3/3 Request Service: Frontend'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@id="title"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@id="title"]</td>
<td>TEST-SLAPOSJS-SERVICE-FRONTEND 0</td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]
</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]
</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>select</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>Custom Personal (Slave) </td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@name="//url"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@name="//url"]</td>
<td>http://www.erp5.com</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': 'New service created.'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-SERVICE-FRONTEND 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-SERVICE-FRONTEND 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n="Hosting Subscription: TEST-SLAPOSJS-SERVICE-FRONTEND 0"]</td>
<td></td>
</tr>
</tr>
<!-- Update Parameters -->
<!-- Update Add Ticket -->
<!-- Update Stop -->
<!-- Update Start -->
<!-- Update Parameters -->
<!-- Update Add Ticket -->
<!-- Update Stop -->
<!-- Update Start -->
<tal:block define="menu_action python: 'Destroy'">
<tal:block define="menu_action python: 'Destroy'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
</tal:block>
<tal:block define="header python: 'Destroy Hosting Subscription: TEST-SLAPOSJS-SERVICE-FRONTEND 0'; ">
<tal:block define="header python: 'Destroy Hosting Subscription: TEST-SLAPOSJS-SERVICE-FRONTEND 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': 'Service is Destroyed.'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_logout" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_logout" />
</tbody></table>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS JS UI Site</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test RenderJS UI</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="menu_item python: 'Sites'; header menu_item">
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS JS UI Site</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="menu_item python: 'Sites'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tal:block define="title python: 'TEST-SLAPOSJS-SET 0'; ">
<tal:block define="title python: 'TEST-SLAPOSJS-SET 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/add_simple_with_title" />
</tal:block>
</tal:block>
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': 'New Site created.'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_content_loaded" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_content_loaded" />
<tal:block define="header python: 'Site : TEST-SLAPOSJS-SET 0'; ">
<tal:block define="header python: 'Site : TEST-SLAPOSJS-SET 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>type</td>
<td>//input[@id="default_geographical_location_longitude"]</td>
<td>3.077475</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@id="default_geographical_location_latitude"]</td>
<td>50.644353</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/save" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/save" />
<!-- check site -->
<!-- check site -->
<!-- Broken history to return
<!-- Broken history to return
<tr>
<td>click</td>
<td>//a[@data-i18n="Site : TEST-SLAPOSJS-SET 0"]</td>
......@@ -63,50 +64,52 @@
</tr>
-->
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: 'Sites'; header menu_item">
<tal:block define="menu_item python: 'Sites'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-SET 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-SET 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Site : TEST-SLAPOSJS-SET 0'; ">
<tal:block define="header python: 'Site : TEST-SLAPOSJS-SET 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tal:block tal:define="delete_configuration python: {'header_title': 'Delete Site: TEST-SLAPOSJS-SET 0',
<tal:block tal:define="delete_configuration python: {'header_title': 'Delete Site: TEST-SLAPOSJS-SET 0',
'notification_text': 'Site is Deleted.'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/delete_simple" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: 'Sites'; header menu_item">
<tal:block define="menu_item python: 'Sites'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_logout" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_logout" />
</tbody></table>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS JS Subscribe</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test RenderJS UI</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS JS Subscribe</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tr>
<tr>
<td>assertTextPresent</td>
<td>Done.</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>open</td>
<td>${base_url}/ERP5Site_removeTestUserList</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertTextPresent</td>
<td>Done.</td>
<td></td>
</tr>
<tal:block metal:use-macro="here/Zuite_CommonTemplate/macros/wait_for_activities" />
</tr>
<tal:block metal:use-macro="here/Zuite_CommonTemplate/macros/wait_for_activities" />
<tr>
<tr>
<td>assertTextPresent</td>
<td>Done.</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>open</td>
<td>${base_url}/web_site_module/hostingjs/WebSite_logout</td>
<td></td>
</tr>
</tr>
<!-- Initialize -->
<tr>
<!-- Initialize -->
<tr>
<td>open</td>
<td>${base_url}/web_site_module/hostingjs/</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@value='Login']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()=' Create New Account ']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>clickAndWait</td>
<td>//a[text()=' Create New Account ']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@name='first_name']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@name='first_name']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@value='Register']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='first_name']</td>
<td>Test</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='last_name']</td>
<td>User</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='default_email_text']</td>
<td>demo@nexedi.com</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='reference']</td>
<td>testSlapOSJSSubscribeUser</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='password']</td>
<td>testSlapOSJSSubscribeUser</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='password_confirmation']</td>
<td>testSlapOSJSSubscribeUser</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='career_subordination_title']</td>
<td>testSlapOSJSSubscribeOrganisation</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='default_telefone_text']</td>
<td>1234567890</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='default_address_street_address']</td>
<td>1234567890</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='default_address_zip_code']</td>
<td>75000</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='default_address_city']</td>
<td>Paris</td>
</tr>
<tr>
</tr>
<tr>
<td>select</td>
<td>//select[@name='default_address_region']</td>
<td>France</td>
</tr>
<tr>
</tr>
<tr>
<td>assertTextPresent</td>
<td>You will receive a confirmation email to activate your account.</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>clickAndWait</td>
<td>//input[@value='Register']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertTextNotPresent</td>
<td>Selected login is already in use, please choose different one.</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@value='Login']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertTextPresent</td>
<td>Credential Request Created.</td>
<td></td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_CommonTemplate/macros/wait_for_activities" />
<tal:block metal:use-macro="here/Zuite_CommonTemplate/macros/wait_for_activities" />
<tr>
<tr>
<td>assertTextPresent</td>
<td>Done.</td>
<td></td>
</tr>
</tr>
<!-- Initialize -->
<tr>
<!-- Initialize -->
<tr>
<td>open</td>
<td>${base_url}/web_site_module/hostingjs/</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>__ac_name</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>__ac_name</td>
<td>testSlapOSJSSubscribeUser</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>__ac_password</td>
<td>testSlapOSJSSubscribeUser</td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@value="Login"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>clickAndWait</td>
<td>//input[@value="Login"]</td>
<td></td>
</tr>
</tr>
<!-- Logout -->
<!-- Logout -->
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//button[@data-i18n='Menu']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//button[@data-i18n='Menu']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n='Logout']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[@data-i18n='Logout']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@value='Confirm']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//input[@value='Confirm']</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@value='Login']</td>
<td></td>
</tr>
</tr>
</tbody></table>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOSJS Subscription Access Denied</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test RenderJS UI</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOSJS Subscription Access Denied</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tal:block define="menu_action python: 'Add'">
<tal:block define="menu_action python: 'Add'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Request a Software </b></td>
</tr>
</tr>
<tal:block define="software_product python: 'Frontend'">
<tal:block define="software_product python: 'Frontend'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/select_software_product" />
</tal:block>
</tal:block>
<tal:block define="software_release python: 'Frontend'">
<tal:block define="software_release python: 'Frontend'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/select_software_release" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Fill Request form </b></td>
</tr>
</tr>
<tal:block define="header python: '3/3 Request Service: Frontend'; ">
<tal:block define="header python: '3/3 Request Service: Frontend'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@id="title"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@id="title"]</td>
<td>TEST-SLAPOSJS-SERVICE-FRONTEND 0</td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]
</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]
</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>select</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>Custom Personal</td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@name="//public-ipv4"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@name="//public-ipv4"]</td>
<td>http://www.erp5.com</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': 'New service created.'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block define="menu_item python: 'Services'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-SERVICE-FRONTEND 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-SERVICE-FRONTEND 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n="Hosting Subscription: TEST-SLAPOSJS-SERVICE-FRONTEND 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>storeLocation</td>
<td>hosting_subscription_link</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>echo</td>
<td>${hosting_subscription_link}</td>
<td></td>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_logout" />
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_logout" />
<!-- Initialize -->
<!-- Initialize -->
<tr>
<tr>
<td>open</td>
<td>${base_url}/web_site_module/hostingjs/</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@value='Login']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()=' Create New Account ']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>clickAndWait</td>
<td>//a[text()=' Create New Account ']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@name='first_name']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@name='first_name']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@value='Register']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='first_name']</td>
<td>Test</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='last_name']</td>
<td>User</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='default_email_text']</td>
<td>demo@nexedi.com</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='reference']</td>
<td>testSlapOSJSSubscribeUser</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='password']</td>
<td>testSlapOSJSSubscribeUser</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='password_confirmation']</td>
<td>testSlapOSJSSubscribeUser</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='career_subordination_title']</td>
<td>testSlapOSJSSubscribeOrganisation</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='default_telefone_text']</td>
<td>1234567890</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='default_address_street_address']</td>
<td>1234567890</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='default_address_zip_code']</td>
<td>75000</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='default_address_city']</td>
<td>Paris</td>
</tr>
<tr>
<td>type</td>
<td>//input[@name='default_address_country']</td>
</tr>
<tr>
<td>select</td>
<td>//select[@name='default_address_region']</td>
<td>France</td>
</tr>
<tr>
</tr>
<tr>
<td>assertTextPresent</td>
<td>You will receive a confirmation email to activate your account.</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>clickAndWait</td>
<td>//input[@value='Register']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertTextNotPresent</td>
<td>Selected login is already in use, please choose different one.</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@value='Login']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertTextPresent</td>
<td>Credential Request Created.</td>
<td></td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_CommonTemplate/macros/wait_for_activities" />
<tal:block metal:use-macro="here/Zuite_CommonTemplate/macros/wait_for_activities" />
<tr>
<tr>
<td>assertTextPresent</td>
<td>Done.</td>
<td></td>
</tr>
</tr>
<!-- Go to hosting subscription, it should show the login page because we are not logged in yet, and then login with the "wrong" user to see if the error message is correctly displayed -->
<tr>
<!-- Go to hosting subscription, it should show the login page because we are not logged in yet, and then login with the "wrong" user to see if the error message is correctly displayed -->
<tr>
<td>open</td>
<td>${hosting_subscription_link}</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>__ac_name</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>__ac_name</td>
<td>testSlapOSJSSubscribeUser</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>__ac_password</td>
<td>testSlapOSJSSubscribeUser</td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@value="Login"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>clickAndWait</td>
<td>//input[@value="Login"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//button[@data-i18n='Menu']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForTextPresent</td>
<td>You are not allowed to access this content</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>clickAndWait</td>
<td>//input[@value="Logout"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@value="Login"]</td>
<td></td>
</tr>
</tbody></table>
</tr>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOSJS Ticket</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test RenderJS UI</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="menu_item python: 'Tickets'; header menu_item">
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOSJS Ticket</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="menu_item python: 'Tickets'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': 'No records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b tal:content="python: 'Add an Support Request'"> Menu Item </b></td>
</tr>
</tr>
<tal:block define="menu_action python: 'Add'">
<tal:block define="menu_action python: 'Add'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@id="title"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@id="title"]</td>
<td>TEST-SLAPOSJS-SUPPORT-REQUEST 0</td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//textarea[@id="description"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//textarea[@id="description"]</td>
<td>TEST-SLAPOSJS-SUPPORT-REQUEST DESCRIPTION</td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//select[@id="resource"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>select</td>
<td>//select[@id="resource"]</td>
<td>Complaint</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': 'New Ticket created.'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_content_loaded" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_content_loaded" />
<tal:block define="header python: 'Support Request : TEST-SLAPOSJS-SUPPORT-REQUEST 0'; ">
<tal:block define="header python: 'Support Request : TEST-SLAPOSJS-SUPPORT-REQUEST 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>verifyElementNotPresent</td>
<td>//button[@type="submit" and @data-i18n="Save"]</td>
<td></td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: 'Tickets'; header menu_item">
<tal:block define="menu_item python: 'Tickets'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-SUPPORT-REQUEST 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-SUPPORT-REQUEST 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Support Request : TEST-SLAPOSJS-SUPPORT-REQUEST 0'; ">
<tal:block define="header python: 'Support Request : TEST-SLAPOSJS-SUPPORT-REQUEST 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
</tal:block>
<tr>
<td>verifyTextPresent</td>
<td>Demo User Functional</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>verifyTextPresent</td>
<td>TEST-SLAPOSJS-SUPPORT-REQUEST 0</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>verifyTextPresent</td>
<td>TEST-SLAPOSJS-SUPPORT-REQUEST DESCRIPTION</td>
<td></td>
</tr>
</tr>
<tal:block tal:define="menu_action python: 'Add'">
<tal:block tal:define="menu_action python: 'Add'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
</tal:block>
<tal:block tal:define="header python: 'New Message'">
<tal:block tal:define="header python: 'New Message'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//textarea[@id="text_content"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//textarea[@id="text_content"]</td>
<td>TEST-SLAPOSJS-SUPPORT-REQUEST NEW MESSAGE</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="header python: 'Support Request : TEST-SLAPOSJS-SUPPORT-REQUEST 0'">
<tal:block tal:define="header python: 'Support Request : TEST-SLAPOSJS-SUPPORT-REQUEST 0'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: 'Tickets'; header menu_item">
<tal:block define="menu_item python: 'Tickets'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-SUPPORT-REQUEST 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-SUPPORT-REQUEST 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Support Request : TEST-SLAPOSJS-SUPPORT-REQUEST 0'; ">
<tal:block define="header python: 'Support Request : TEST-SLAPOSJS-SUPPORT-REQUEST 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(2)', 'footer': '2 Records'}">
<tal:block tal:define="pagination_configuration python: {'header': '(2)', 'footer': '2 Records'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>verifyTextPresent</td>
<td>TEST-SLAPOSJS-SUPPORT-REQUEST NEW MESSAGE</td>
<td></td>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_logout" />
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_logout" />
</tbody></table>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
......@@ -364,7 +364,7 @@
</tr>
<tr>
<td>click</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'%s\')]//a[contains(text(), \'Account\')]' % panel_gadget_id"></td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'%s\')]//a[contains(text(), \'Login Account\')]' % panel_gadget_id"></td>
<td></td>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_content_loaded" />
......
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS JS Account </title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test SlapOS JS Account </td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="person_name python: 'Demo User Functional'">
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS JS Account </td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="person_name python: 'Demo User Functional'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_account" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>assertElementPresent</td>
<td>//label[text()="名"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>assertElementPresent</td>
<td>//label[text()="姓"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>assertElementPresent</td>
<td>//label[text()="电子邮件"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>assertElementPresent</td>
<td>//label[text()="电话号码"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>assertElementPresent</td>
<td>//label[text()="地址"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>assertElementPresent</td>
<td>//label[text()="邮编"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>assertElementPresent</td>
<td>//label[text()="城市"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>assertElementPresent</td>
<td>//label[text()="国家"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td colspan="3"><b> Rename user to DEMO A </b></td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@id="first_name"]</td>
<td>DEMO A</td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@id="last_name"]</td>
<td>DEMO B</td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@id="default_email_text"]</td>
<td>demoA@nexedi.com</td>
</tr>
</tr>
<!-- Perform an intermediate save to ensure we can edit partial values -->
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/save" />
<!-- Perform an intermediate save to ensure we can edit partial values -->
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/save" />
<tr>
<tr>
<td>type</td>
<td>//textarea[@id="default_address_street_address"]</td>
<td>My New Address</td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@id="default_address_city"]</td>
<td>My New City</td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@id="default_address_zip_code"]</td>
<td>99999</td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@id="default_telephone_coordinate_text"]</td>
<td>+55 0192182812</td>
</tr>
</tr>
<tr>
<tr>
<td>select</td>
<td>//select[@id="default_address_region"]</td>
<td>Brazil</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/save" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/save" />
<!-- access somewhere else -->
<tal:block define="menu_item python: 'Sites'; header menu_item">
<!-- access somewhere else -->
<tal:block define="menu_item python: 'Sites'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item" />
</tal:block>
</tal:block>
<tal:block define="person_name python: 'DEMO A DEMO B'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/access_menu_item_account" />
</tal:block>
<tal:block define="person_name python: 'DEMO A DEMO B'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_account" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@id="default_address_city" and @value="My New City"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>verifyValue</td>
<td>//textarea[@id="default_address_street_address"]</td>
<td>My New Address</td>
</tr>
</tr>
<tr>
<tr>
<td>assertElementPresent</td>
<td>//input[@id="default_address_city" and @value="My New City"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>assertElementPresent</td>
<td>//input[@id="default_address_zip_code" and @value="99999"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>assertElementPresent</td>
<td>//input[@id="default_telephone_coordinate_text" and @value="+55 0192182812"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>assertElementPresent</td>
<td>//select[@id="default_address_region"]/option[text()="Brazil" and @selected="selected"]</td>
<td></td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_logout" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/slapos_logout" />
</tbody></table>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS UI Account Certificate</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test SlapOS UI Account Certificate</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS UI Account Certificate</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="person_name python: 'Demo User Functional'">
<tal:block define="person_name python: 'Demo User Functional'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_account" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Request User Certificate</b> </td>
</tr>
</tr>
<tal:block define="menu_action python: 'Request Certificate'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="menu_action python: 'Request Certificate'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="header python: '请求新的证书'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '请求新的证书'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '证书已请求。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//textarea[@name="certificate"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//textarea[@name="key"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: '请求新的证书'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_page_header" />
</tal:block>
<tal:block define="header python: '请求新的证书'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_page_header" />
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Request User Certificate</b> </td>
</tr>
</tr>
<tal:block define="menu_action python: 'Request Certificate'">
<tal:block define="menu_action python: 'Request Certificate'">
<tr>
<td colspan="3"><b tal:content="python: 'Click on %s' % menu_action"> Menu Item </b></td>
</tr>
<tr>
<td>waitForElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action">
</td>
<td></td>
</tr>
<tr>
<td>assertElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action">
</td>
<td></td>
</tr>
<tr>
<td>click</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action">
</td>
<td></td>
</tr>
</tal:block>
<tal:block define="header python: '请求新的证书'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '请求新的证书'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '该用户已拥有一个证书,请在请求新的证书之前吊销已有证书。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block define="header python: '请求新的证书'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_page_header" />
</tal:block>
<tal:block define="header python: '请求新的证书'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_page_header" />
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Revoke Certificate</b></td>
</tr>
</tr>
<tal:block define="menu_action python: 'Revoke Certificate'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="menu_action python: 'Revoke Certificate'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="header python: '吊销用户证书'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '吊销用户证书'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '证书已吊销。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block define="header python: '您的登录账号 : Demo User Functional'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '您的登录账号 : Demo User Functional'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Request User Certificate again</b> </td>
</tr>
</tr>
<tal:block define="menu_action python: 'Request Certificate'">
<tal:block define="menu_action python: 'Request Certificate'">
<tr>
<td colspan="3"><b tal:content="python: 'Click on %s' % menu_action"> Menu Item </b></td>
</tr>
<tr>
<td>waitForElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action">
</td>
<td></td>
</tr>
<tr>
<td>assertElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action">
</td>
<td></td>
</tr>
<tr>
<td>click</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action">
</td>
<td></td>
</tr>
</tal:block>
</tal:block>
<tal:block define="header python: '请求新的证书'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '请求新的证书'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '证书已请求。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//textarea[@name="certificate"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//textarea[@name="key"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: '请求新的证书'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_page_header" />
</tal:block>
<tal:block define="header python: '请求新的证书'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_logout" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_logout" />
</tbody></table>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test RapidSpace Console Account Page Check</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test RapidSpace Console Account Page Check</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test SlapOS JS Account Force ReLogin</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS JS Account Force ReLogin</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tr>
<tr>
<td>open</td>
<td>${base_url}/web_site_module/hostingjs/zh/</td>
<td></td>
</tr>
<!--
</tr>
<!--
In testSlapOSJSAccountLogin, after visit hostingjs website,
the default user is "zope", so in that test we need to call
hostingjs/WebSite_logout to logout first.
......@@ -25,163 +28,165 @@ hostingjs/WebSite_logout to logout first.
Here we don't call it manually, due to the zope user doesn't
have the correct "me" setting, so we just let the getSettingMe
function redirect us to the login page -->
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//label[contains(text(), "登录")]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@name="__ac_name"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@name="__ac_password"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>__ac_name</td>
<td>demo_functional_user</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>__ac_password</td>
<td>demo_functional_user</td>
</tr>
</tr>
<tr>
<tr>
<td>clickAndWait</td>
<td>WebSite_login:method</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n="Login Account"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n="Tickets"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n="Invoices"]</td>
<td></td>
</tr>
</tr>
<!-- Account Tab -->
<tr>
<tr>
<td>click</td>
<td>//a[@data-i18n="Login Account"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//button[@data-i18n="Save"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n="Add Login"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n="Add Organisation"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n="Token"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n="Request Certificate"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n="Revoke Certificate"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//label[contains(text(), "名")]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//label[contains(text(), "姓")]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//label[contains(text(), "电子邮件")]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@value="Demo User"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@value="Functional"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@value="demo@nexedi.com"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//h1[contains(text(), "登录账号")]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[contains(text(), "编号")]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[contains(text(), "类别")]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//h1[contains(text(), "组织")]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//th[contains(text(), "标题")]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[contains(text(), "编号")]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//th[contains(text(), "区域")]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//th[contains(text(), "状态")]</td>
<td></td>
</tr>
</tbody></table>
</tr>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS UI Account Login</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test SlapOS JS Account Login</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="person_name python: 'Demo User Functional'">
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS JS Account Login</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="person_name python: 'Demo User Functional'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_account" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Create another Login</b> </td>
</tr>
</tr>
<tal:block define="menu_action python: 'Add Login'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="menu_action python: 'Add Login'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="header python: '添加新用户登录'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '添加新用户登录'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Fill the form</b> </td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@name='reference']</td>
<td>demo_test_login_from_testSlapOSJSAccountLogin</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='password']</td>
<td>demo_test_password_from_testSlapOSJSAccountLogin</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='password_confirmation']</td>
<td>demo_test_password_from_testSlapOSJSAccountLogin</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '新用户登录已创建。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block define="header python: '您的登录账号 : Demo User Functional'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '您的登录账号 : Demo User Functional'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="person_name python: 'Demo User Functional'">
<tal:block define="person_name python: 'Demo User Functional'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_account" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(2)', 'footer': '2 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(2)', 'footer': '2 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>verifyTextPresent</td>
<td>demo_test_login_from_testSlapOSJSAccountLogin</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>click</td>
<td>//a[text()="demo_test_login_from_testSlapOSJSAccountLogin"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Login : demo_test_login_from_testSlapOSJSAccountLogin'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: 'Login : demo_test_login_from_testSlapOSJSAccountLogin'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="menu_action python: 'Delete'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="menu_action python: 'Delete'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="header python: '关闭登录账号: demo_test_login_from_testSlapOSJSAccountLogin'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '关闭登录账号: demo_test_login_from_testSlapOSJSAccountLogin'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block define="header python: '您的登录账号 : Demo User Functional'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '您的登录账号 : Demo User Functional'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="person_name python: 'Demo User Functional'">
<tal:block define="person_name python: 'Demo User Functional'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_account" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>verifyTextNotPresent</td>
<td>demo_test_login_from_testSlapOSJSAccountLogin</td>
<td></td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_logout" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_logout" />
</tbody></table>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS JS Account Token</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test SlapOS JS Account Token</td></tr>
</thead><tbody>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS JS Account Token</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="person_name python: 'Demo User Functional'">
<tal:block define="person_name python: 'Demo User Functional'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_account" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td colspan="3"><b tal:content="python: 'Click on Token'"> Menu Item </b></td>
</tr>
</tr>
<tal:block define="menu_action python: 'Token'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="menu_action python: 'Token'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="header python: '请求新令牌'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '请求新令牌'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '令牌已请求。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//label[text()="您的令牌"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//label[text()="您的令牌"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_erp5_field_string.html\')]//p[contains(text(), \'%s%02d%02d-\')]' % (DateTime().year(),DateTime().month(),DateTime().day())"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_erp5_field_string.html\')]//p[contains(text(), \'%s%02d%02d-\')]' % (DateTime().year(),DateTime().month(),DateTime().day())">
</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_erp5_field_string.html\')]//p[contains(text(), \'%s%02d%02d-\')]' % (DateTime().year(),DateTime().month(),DateTime().day())"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_erp5_field_string.html\')]//p[contains(text(), \'%s%02d%02d-\')]' % (DateTime().year(),DateTime().month(),DateTime().day())">
</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: '请求新令牌'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_page_header" />
</tal:block>
<tal:block define="header python: '请求新令牌'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_page_header" />
</tal:block>
<tal:block define="header python: '您的登录账号 : Demo User Functional'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '您的登录账号 : Demo User Functional'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_logout" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_logout" />
</tbody></table>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS JS Basic Navigation</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test SlapOS JS Basic Navigation</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS JS Basic Navigation</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<!-- Access Menu -->
<tr>
<!-- Access Menu -->
<tr>
<td>click</td>
<td>//button[@data-i18n='Menu']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//button[@data-i18n='Menu']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n='Home']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n='Login Account']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n='Tickets']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n='Sites']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n='Projects']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n='Invoices']</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n='Services']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n='Servers']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n='Networks']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n='Logout']</td>
<td></td>
</tr>
</tr>
<tal:block define="menu_item python: '工单'; header menu_item; menu_item_data python: 'Tickets'">
<tal:block define="menu_item python: '工单'; header menu_item; menu_item_data python: 'Tickets'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
</tal:block>
</tal:block>
<tal:block define="menu_item python: '站点'; header menu_item; menu_item_data python:'Sites'">
<tal:block define="menu_item python: '站点'; header menu_item; menu_item_data python:'Sites'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
</tal:block>
</tal:block>
<tal:block define="menu_item python: '项目'; header menu_item; menu_item_data python: 'Projects'">
<tal:block define="menu_item python: '项目'; header menu_item; menu_item_data python: 'Projects'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
</tal:block>
</tal:block>
<tal:block define="menu_item python: '账单'; header menu_item; menu_item_data python: 'Invoices'">
<tal:block define="menu_item python: '账单'; header menu_item; menu_item_data python: 'Invoices'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
</tal:block>
</tal:block>
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python: 'Services'">
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python: 'Services'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
</tal:block>
</tal:block>
<tal:block define="menu_item python: '服务器'; header menu_item; menu_item_data python: 'Servers'">
<tal:block define="menu_item python: '服务器'; header menu_item; menu_item_data python: 'Servers'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
</tal:block>
</tal:block>
<tal:block define="menu_item python: '网络'; header menu_item; menu_item_data python:'Networks'">
<tal:block define="menu_item python: '网络'; header menu_item; menu_item_data python:'Networks'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b>Access modules and verify the redirect</b></td>
</tr>
<tr>
</tr>
<tr>
<td>openAndWait</td>
<td>${base_url}/</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>open</td>
<td>${base_url}/web_site_module/hostingjs/zh/#/support_request_module</td>
<td></td>
</tr>
</tr>
<tal:block define="menu_item python: '工单'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="menu_item python: '工单'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td>openAndWait</td>
<td>${base_url}/</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>open</td>
<td>${base_url}/web_site_module/hostingjs/zh/#/hosting_subscription_module</td>
<td></td>
</tr>
</tr>
<tal:block define="menu_item python: '服务'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="menu_item python: '服务'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td>openAndWait</td>
<td>${base_url}/</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>open</td>
<td>${base_url}/web_site_module/hostingjs/zh/#/computer_module</td>
<td></td>
</tr>
</tr>
<tal:block define="menu_item python: '服务器'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="menu_item python: '服务器'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td>openAndWait</td>
<td>${base_url}/</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>open</td>
<td>${base_url}/web_site_module/hostingjs/zh/#/accounting_module</td>
<td></td>
</tr>
</tr>
<tal:block define="menu_item python: '账单'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="menu_item python: '账单'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td>openAndWait</td>
<td>${base_url}/</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>open</td>
<td>${base_url}/web_site_module/hostingjs/zh/#/project_module</td>
<td></td>
</tr>
</tr>
<tal:block define="menu_item python: '项目'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="menu_item python: '项目'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td>openAndWait</td>
<td>${base_url}/</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>open</td>
<td>${base_url}/web_site_module/hostingjs/zh/#/computer_network_module</td>
<td></td>
</tr>
</tr>
<tal:block define="menu_item python: '网络'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="menu_item python: '网络'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td>openAndWait</td>
<td>${base_url}/</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>open</td>
<td>${base_url}/web_site_module/hostingjs/zh/#/organisation_module</td>
<td></td>
</tr>
</tr>
<tal:block define="menu_item python: '站点'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="menu_item python: '站点'; header menu_item">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="person_name python: 'Demo User Functional'">
<tal:block define="person_name python: 'Demo User Functional'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_account" />
</tal:block>
</tal:block>
<tal:block define="header python: '您的登录账号 : Demo User Functional';">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="header python: '您的登录账号 : Demo User Functional';">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_logout" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_logout" />
</tbody></table>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS JS NetworkI</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test SlapOS JS Network</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="menu_item python: '网络'; header menu_item; menu_item_data python:'Networks'">
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS JS Network</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="menu_item python: '网络'; header menu_item; menu_item_data python:'Networks'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block define="title python: 'TEST-SLAPOSJS-NETWORK 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/add_simple_with_title" />
</tal:block>
<tal:block define="title python: 'TEST-SLAPOSJS-NETWORK 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/add_simple_with_title" />
</tal:block>
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '已创建新的网络。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_content_loaded" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_content_loaded" />
<tal:block define="header python: 'Computer Network :TEST-SLAPOSJS-NETWORK 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: 'Computer Network :TEST-SLAPOSJS-NETWORK 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td>type</td>
<td>//input[@id="title"]</td>
<td>TEST-SLAPOSJS-NETWORK 1</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/save" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/save" />
<!-- check site -->
<!-- check site -->
<!-- Broken history to return
<!-- Broken history to return
<tr>
<td>click</td>
<td>//a[@data-i18n="Site : TEST-SLAPOSJS-SET 0"]</td>
<td></td>
</tr>
-->
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: '网络'; header menu_item; menu_item_data python: 'Networks'">
<tal:block define="menu_item python: '网络'; header menu_item; menu_item_data python: 'Networks'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-NETWORK 1"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-NETWORK 1"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Computer Network :TEST-SLAPOSJS-NETWORK 1'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: 'Computer Network :TEST-SLAPOSJS-NETWORK 1'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block tal:define="delete_configuration python: {'header_title': '删除网络: TEST-SLAPOSJS-NETWORK 1',
<tal:block tal:define="delete_configuration python: {'header_title': '删除网络: TEST-SLAPOSJS-NETWORK 1',
'notification_text': '网络已删除。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/delete_simple" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/delete_simple" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: '网络'; header menu_item; menu_item_data python: 'Networks'">
<tal:block define="menu_item python: '网络'; header menu_item; menu_item_data python: 'Networks'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_logout" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_logout" />
</tbody></table>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS JS Network Shared By Organisation</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test SlapOS JS Network Shared By Organisation</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS JS Network Shared By Organisation</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="document_title python: 'TEST-SLAPOSJS-ORGANISATION-TO-SHARE-NETWORK 0';">
<tal:block define="document_title python: 'TEST-SLAPOSJS-ORGANISATION-TO-SHARE-NETWORK 0';">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/create_user_organisation" />
</tal:block>
</tal:block>
<tal:block define="document_title python: 'TEST-SLAPOSJS-NETWORK-BY-ORGASNISATION 0';">
<tal:block define="document_title python: 'TEST-SLAPOSJS-NETWORK-BY-ORGASNISATION 0';">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/create_simple_network" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b tal:content="python: 'Wait index the documents'"> Menu Item </b></td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: '网络'; header menu_item; menu_item_data python: 'Networks'">
<tal:block define="menu_item python: '网络'; header menu_item; menu_item_data python: 'Networks'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-NETWORK-BY-ORGASNISATION 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-NETWORK-BY-ORGASNISATION 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Computer Network :TEST-SLAPOSJS-NETWORK-BY-ORGASNISATION 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: 'Computer Network :TEST-SLAPOSJS-NETWORK-BY-ORGASNISATION 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td colspan="3"><b tal:content="python: 'Transfer Network to a Organisation'"> Menu Item </b></td>
</tr>
</tr>
<tal:block tal:define="menu_action python: 'Transfer'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block tal:define="menu_action python: 'Transfer'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="header python: '转移计算机网络'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '转移计算机网络'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//select[@name="destination_section"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>select</td>
<td>//select[@name="destination_section"]</td>
<td>TEST-SLAPOSJS-ORGANISATION-TO-SHARE-NETWORK 0</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '计算机网络已转移。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: '网络'; header menu_item; menu_item_data python: 'Networks'">
<tal:block define="menu_item python: '网络'; header menu_item; menu_item_data python: 'Networks'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-NETWORK-BY-ORGASNISATION 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-NETWORK-BY-ORGASNISATION 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Computer Network :TEST-SLAPOSJS-NETWORK-BY-ORGASNISATION 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: 'Computer Network :TEST-SLAPOSJS-NETWORK-BY-ORGASNISATION 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td>waitForTextPresent</td>
<td>TEST-SLAPOSJS-ORGANISATION-TO-SHARE-NETWORK 0</td>
<td></td>
</tr>
</tr>
<tal:block define="person_name python: 'Demo User Functional'">
<tal:block define="person_name python: 'Demo User Functional'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_account" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-ORGANISATION-TO-SHARE-NETWORK 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-ORGANISATION-TO-SHARE-NETWORK 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: '组织 : TEST-SLAPOSJS-ORGANISATION-TO-SHARE-NETWORK 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '组织 : TEST-SLAPOSJS-ORGANISATION-TO-SHARE-NETWORK 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Invite User </b> </td>
</tr>
</tr>
<tal:block define="menu_action python: 'Invite User'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="menu_action python: 'Invite User'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="header python: '生成新的邀请链接'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '生成新的邀请链接'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block define="header python: '生成新的邀请链接'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '生成新的邀请链接'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '新的邀请链接已生成。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//p[@id="invitation_link"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>storeText</td>
<td>//p[@id="invitation_link"]</td>
<td>invitation_link</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login_with_another_user" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login_with_another_user" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="person_name python: 'Another Demo User Functional'">
<tal:block define="person_name python: 'Another Demo User Functional'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_account" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>openAndWait</td>
<td>${invitation_link}</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: '成功...'; ">
<tal:block define="header python: '成功...'; ">
<tr>
<td>waitForElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//span[@data-i18n=\'%s\']' % header"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//span[@data-i18n=\'%s\']' % header">
</td>
<td></td>
</tr>
<tr>
<td>assertElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//span[@data-i18n=\'%s\']' % header"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//span[@data-i18n=\'%s\']' % header">
</td>
<td></td>
</tr>
</tal:block>
</tal:block>
<tr>
<tr>
<td>assertTextPresent</td>
<td>You sucessfully join a new organisation: TEST-SLAPOSJS-ORGANISATION-TO-SHARE-NETWORK 0.
</td>
</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>click</td>
<td>//a[@data-i18n='Continue']</td>
<td></td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="person_name python: 'Another Demo User Functional'">
<tal:block define="person_name python: 'Another Demo User Functional'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_account" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>waitForTextPresent</td>
<td>TEST-SLAPOSJS-ORGANISATION-TO-SHARE-NETWORK 0</td>
<td></td>
</tr>
</tr>
<tal:block define="menu_item python: '网络'; header menu_item; menu_item_data python:'Networks'">
<tal:block define="menu_item python: '网络'; header menu_item; menu_item_data python:'Networks'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-NETWORK-BY-ORGASNISATION 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-NETWORK-BY-ORGASNISATION 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Computer Network :TEST-SLAPOSJS-NETWORK-BY-ORGASNISATION 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: 'Computer Network :TEST-SLAPOSJS-NETWORK-BY-ORGASNISATION 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_logout" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_logout" />
</tbody></table>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS JS Network Shared By Project</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test SlapOS JS Network Shared By Project</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS JS Network Shared By Project</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="document_title python: 'TEST-SLAPOSJS-PROJECT-TO-SHARE-NETWORK 0';">
<tal:block define="document_title python: 'TEST-SLAPOSJS-PROJECT-TO-SHARE-NETWORK 0';">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/create_simple_project" />
</tal:block>
</tal:block>
<tal:block define="document_title python: 'TEST-SLAPOSJS-NETWORK-BY-PROJECT 0';">
<tal:block define="document_title python: 'TEST-SLAPOSJS-NETWORK-BY-PROJECT 0';">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/create_simple_network" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b tal:content="python: 'Wait index the documents'"> Menu Item </b></td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: '网络'; header menu_item; menu_item_data python: 'Networks'">
<tal:block define="menu_item python: '网络'; header menu_item; menu_item_data python: 'Networks'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-NETWORK-BY-PROJECT 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-NETWORK-BY-PROJECT 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Computer Network :TEST-SLAPOSJS-NETWORK-BY-PROJECT 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: 'Computer Network :TEST-SLAPOSJS-NETWORK-BY-PROJECT 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td colspan="3"><b tal:content="python: 'Transfer Network to a Project'"> Menu Item </b></td>
</tr>
</tr>
<tal:block tal:define="menu_action python: 'Transfer'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block tal:define="menu_action python: 'Transfer'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="header python: '转移计算机网络'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '转移计算机网络'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//select[@name="destination_project"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>select</td>
<td>//select[@name="destination_project"]</td>
<td>TEST-SLAPOSJS-PROJECT-TO-SHARE-NETWORK 0</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '计算机网络已转移。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: '网络'; header menu_item; menu_item_data python: 'Networks'">
<tal:block define="menu_item python: '网络'; header menu_item; menu_item_data python: 'Networks'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-NETWORK-BY-PROJECT 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-NETWORK-BY-PROJECT 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Computer Network :TEST-SLAPOSJS-NETWORK-BY-PROJECT 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: 'Computer Network :TEST-SLAPOSJS-NETWORK-BY-PROJECT 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td>waitForTextPresent</td>
<td>TEST-SLAPOSJS-PROJECT-TO-SHARE-NETWORK 0</td>
<td></td>
</tr>
</tr>
<tal:block define="menu_item python: '项目'; header menu_item; menu_item_data python:'Projects'">
<tal:block define="menu_item python: '项目'; header menu_item; menu_item_data python:'Projects'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-PROJECT-TO-SHARE-NETWORK 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-PROJECT-TO-SHARE-NETWORK 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: '项目 : TEST-SLAPOSJS-PROJECT-TO-SHARE-NETWORK 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '项目 : TEST-SLAPOSJS-PROJECT-TO-SHARE-NETWORK 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Invite User</b> </td>
</tr>
</tr>
<tal:block define="menu_action python: 'Invite User'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="menu_action python: 'Invite User'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="header python: '生成新的邀请链接'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '生成新的邀请链接'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block define="header python: '生成新的邀请链接'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '生成新的邀请链接'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '新的邀请链接已生成。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//p[@id="invitation_link"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>storeText</td>
<td>//p[@id="invitation_link"]</td>
<td>invitation_link</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login_with_another_user" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login_with_another_user" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="menu_item python: '项目'; header menu_item; menu_item_data python:'Projects'">
<tal:block define="menu_item python: '项目'; header menu_item; menu_item_data python:'Projects'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>openAndWait</td>
<td>${invitation_link}</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: '成功...'; ">
<tal:block define="header python: '成功...'; ">
<tr>
<td>waitForElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//span[@data-i18n=\'%s\']' % header"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//span[@data-i18n=\'%s\']' % header">
</td>
<td></td>
</tr>
<tr>
<td>assertElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//span[@data-i18n=\'%s\']' % header"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//span[@data-i18n=\'%s\']' % header">
</td>
<td></td>
</tr>
</tal:block>
</tal:block>
<tr>
<tr>
<td>assertTextPresent</td>
<td>You sucessfully join a new project: TEST-SLAPOSJS-PROJECT-TO-SHARE-NETWORK 0.
</td>
</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>click</td>
<td>//a[@data-i18n='Continue']</td>
<td></td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: '项目'; header menu_item; menu_item_data python:'Projects'">
<tal:block define="menu_item python: '项目'; header menu_item; menu_item_data python:'Projects'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>waitForTextPresent</td>
<td>TEST-SLAPOSJS-PROJECT-TO-SHARE-NETWORK 0</td>
<td></td>
</tr>
</tr>
<tal:block define="menu_item python: '网络'; header menu_item; menu_item_data python: 'Networks'">
<tal:block define="menu_item python: '网络'; header menu_item; menu_item_data python: 'Networks'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-NETWORK-BY-PROJECT 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-NETWORK-BY-PROJECT 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Computer Network :TEST-SLAPOSJS-NETWORK-BY-PROJECT 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: 'Computer Network :TEST-SLAPOSJS-NETWORK-BY-PROJECT 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_logout" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_logout" />
</tbody></table>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS JS Organisation</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test SlapOS JS Organisation</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="person_name python: 'Demo User Functional'">
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS JS Organisation</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="person_name python: 'Demo User Functional'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_account" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Create an Organisation</b> </td>
</tr>
</tr>
<tal:block define="menu_action python: 'Add Organisation'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="menu_action python: 'Add Organisation'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="header python: '新组织'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '新组织'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Fill the form</b> </td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@name='title']</td>
<td>demo_test_organisation_from_testSlapOSJSOrganisation</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '新的组织已创建。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block define="header python: '组织 : demo_test_organisation_from_testSlapOSJSOrganisation'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '组织 : demo_test_organisation_from_testSlapOSJSOrganisation'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_logout" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_logout" />
</tbody></table>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS JS Organisation Invitation</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test SlapOS JS Organisation Invitation </td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS JS Organisation Invitation </td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="person_name python: 'Demo User Functional'">
<tal:block define="person_name python: 'Demo User Functional'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_account" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Create an Organisation</b> </td>
</tr>
</tr>
<tal:block define="menu_action python: 'Add Organisation'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="menu_action python: 'Add Organisation'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="header python: '新组织'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '新组织'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Fill the form</b> </td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@name='title']</td>
<td>demo_test_organisation_from_testSlapOSJSOrganisationInvitation</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '新的组织已创建。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block define="header python: '组织 : demo_test_organisation_from_testSlapOSJSOrganisationInvitation'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '组织 : demo_test_organisation_from_testSlapOSJSOrganisationInvitation'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Fill the form</b> </td>
</tr>
</tr>
<tal:block define="menu_action python: 'Invite User'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="menu_action python: 'Invite User'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="header python: '生成新的邀请链接'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '生成新的邀请链接'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block define="header python: '生成新的邀请链接'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '生成新的邀请链接'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '新的邀请链接已生成。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//p[@id="invitation_link"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>storeText</td>
<td>//p[@id="invitation_link"]</td>
<td>invitation_link</td>
</tr>
<tr>
</tr>
<tr>
<td>openAndWait</td>
<td>${invitation_link}</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: '失败...'; ">
<tal:block define="header python: '失败...'; ">
<tr>
<td>waitForElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//span[@data-i18n=\'%s\']' % header"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//span[@data-i18n=\'%s\']' % header">
</td>
<td></td>
</tr>
<tr>
<td>assertElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//span[@data-i18n=\'%s\']' % header"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//span[@data-i18n=\'%s\']' % header">
</td>
<td></td>
</tr>
</tal:block>
</tal:block>
<tr>
<tr>
<td>assertTextPresent</td>
<td>Invitation Token cannot be used by the same user that generated the token!</td>
<td></td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login_with_another_user" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login_with_another_user" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="person_name python: 'Another Demo User Functional'">
<tal:block define="person_name python: 'Another Demo User Functional'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_account" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>openAndWait</td>
<td>${invitation_link}</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: '成功...'; ">
<tal:block define="header python: '成功...'; ">
<tr>
<td>waitForElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//span[@data-i18n=\'%s\']' % header"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//span[@data-i18n=\'%s\']' % header">
</td>
<td></td>
</tr>
<tr>
<td>assertElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//span[@data-i18n=\'%s\']' % header"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//span[@data-i18n=\'%s\']' % header">
</td>
<td></td>
</tr>
</tal:block>
</tal:block>
<tr>
<tr>
<td>assertTextPresent</td>
<td>You sucessfully join a new organisation: demo_test_organisation_from_testSlapOSJSOrganisationInvitation.
</td>
</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>click</td>
<td>//a[@data-i18n='Continue']</td>
<td></td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="person_name python: 'Another Demo User Functional'">
<tal:block define="person_name python: 'Another Demo User Functional'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_account" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>waitForTextPresent</td>
<td>demo_test_organisation_from_testSlapOSJSOrganisationInvitation</td>
<td></td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_logout" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_logout" />
</tbody></table>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS JS Project</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test SlapOS JS Project</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="document_title python: 'TEST-SLAPOSJS-PROJECT 0';">
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS JS Project</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="document_title python: 'TEST-SLAPOSJS-PROJECT 0';">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/create_simple_project" />
</tal:block>
</tal:block>
<tr>
<tr>
<td>type</td>
<td>//textarea[@id="description"]</td>
<td>TEST-SLAPOSJS-PROJECT DESCRIPTION</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/save" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/save" />
<!-- check site -->
<!-- check site -->
<!-- Broken history to return
<!-- Broken history to return
<tr>
<td>click</td>
<td>//a[@data-i18n="Project : TEST-SLAPOSJS-PROJECT 0"]</td>
......@@ -38,50 +39,52 @@
</tr>
-->
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: '项目'; header menu_item; menu_item_data python: 'Projects'">
<tal:block define="menu_item python: '项目'; header menu_item; menu_item_data python: 'Projects'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-PROJECT 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-PROJECT 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: '项目 : TEST-SLAPOSJS-PROJECT 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '项目 : TEST-SLAPOSJS-PROJECT 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block tal:define="delete_configuration python: {'header_title': '删除项目: TEST-SLAPOSJS-PROJECT 0',
<tal:block tal:define="delete_configuration python: {'header_title': '删除项目: TEST-SLAPOSJS-PROJECT 0',
'notification_text': '项目已删除。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/delete_simple" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/delete_simple" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: '项目'; header menu_item; menu_item_data python: 'Projects'">
<tal:block define="menu_item python: '项目'; header menu_item; menu_item_data python: 'Projects'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_logout" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_logout" />
</tbody></table>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test Project Invitation</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test Project Invitation</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test Project Invitation</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="document_title python: 'TEST-SLAPOSJS-PROJECT-INVITATION 0';">
<tal:block define="document_title python: 'TEST-SLAPOSJS-PROJECT-INVITATION 0';">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/create_simple_project" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Invite User/b> </td>
</tr>
<tal:block define="menu_action python: 'Invite User'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_submenu_action" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="header python: '生成新的邀请链接'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block define="header python: '生成新的邀请链接'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '新的邀请链接已生成。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tr>
......@@ -89,7 +90,7 @@
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
......@@ -132,7 +133,7 @@
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
......
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS JS Server</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test SlapOS JS Server</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS JS Server</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="document_title python: 'TEST-SLAPOSJS-COMPUTER 0';">
<tal:block define="document_title python: 'TEST-SLAPOSJS-COMPUTER 0';">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/create_simple_computer" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: '服务器'; header menu_item; menu_item_data python: 'Servers'">
<tal:block define="menu_item python: '服务器'; header menu_item; menu_item_data python: 'Servers'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-COMPUTER 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-COMPUTER 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Computer: TEST-SLAPOSJS-COMPUTER 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: 'Computer: TEST-SLAPOSJS-COMPUTER 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Supply a Software </b></td>
</tr>
</tr>
<tal:block define="menu_action python: 'Supply'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="menu_action python: 'Supply'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Select a Software Product</b></td>
</tr>
</tr>
<tal:block define="header python: '1/3 选择一个软件'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '1/3 选择一个软件'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_field_listbox.html')]//h1[contains(text(), '软件产品')]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_field_listbox.html')]//h1[contains(text(), '软件产品')]</td>
<td></td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_listbox_loaded" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_listbox_loaded" />
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//td/a[text()="Frontend"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//td/a[text()="Frontend"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td colspan="3"><b> Select a Software Release</b></td>
</tr>
</tr>
<tal:block define="header python: '2/3 选择一个发布'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '2/3 选择一个发布'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_field_listbox.html')]//h1[contains(text(), '软件发布')]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_field_listbox.html')]//h1[contains(text(), '软件发布')]</td>
<td></td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_listbox_loaded" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_listbox_loaded" />
<tr>
<tr>
<td>click</td>
<td>//td/a[text()="Frontend"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//label[text()="将要安装发布软件"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//label[text()="目标计算机标题"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//p[text()="TEST-SLAPOSJS-COMPUTER 0"]</td>
<td></td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '新的软件安装已创建。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block define="header python: 'Software Installation : Frontend'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: 'Software Installation : Frontend'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-COMPUTER 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-COMPUTER 0"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>pause</td>
<td>5000</td>
<td>5000</td>
</tr>
</tr>
<tal:block define="header python: 'Computer: TEST-SLAPOSJS-COMPUTER 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: 'Computer: TEST-SLAPOSJS-COMPUTER 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: '服务器'; header menu_item; menu_item_data python: 'Servers'">
<tal:block define="menu_item python: '服务器'; header menu_item; menu_item_data python: 'Servers'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-COMPUTER 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-COMPUTER 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Computer: TEST-SLAPOSJS-COMPUTER 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: 'Computer: TEST-SLAPOSJS-COMPUTER 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td>click</td>
<td>//th/a[text()="软件发布"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//td/a[contains(text(), "Frontend (0.1)")]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//td/a[contains(text(), "Frontend (0.1)")]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>click</td>
<td>//td/a[contains(text(), "Frontend (0.1)")]</td>
<td></td>
</tr>
<tal:block define="header python: 'Software Installation : Frontend'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
</tr>
<tal:block define="header python: 'Software Installation : Frontend'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="menu_action python: 'Destroy'">
<tal:block define="menu_action python: 'Destroy'">
<tr>
<td colspan="3"><b tal:content="python: 'Click on %s' % menu_action"> Menu Item </b></td>
</tr>
<tr>
<td>waitForElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action">
</td>
<td></td>
</tr>
<tr>
<td>assertElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action">
</td>
<td></td>
</tr>
<tr>
<td>click</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action">
</td>
<td></td>
</tr>
</tal:block>
</tal:block>
<tal:block define="header python: '销毁软件安装'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block define="header python: '销毁软件安装'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '您成功请求销毁。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-COMPUTER 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-COMPUTER 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Computer: TEST-SLAPOSJS-COMPUTER 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: 'Computer: TEST-SLAPOSJS-COMPUTER 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td colspan="3"><b>Try to request a new Certificate</b></td>
</tr>
</tr>
<tal:block define="menu_action python: 'Request Certificate'">
<tal:block define="menu_action python: 'Request Certificate'">
<tr>
<td colspan="3"><b tal:content="python: 'Click on %s' % menu_action"> Menu Item </b></td>
</tr>
<tr>
<td>waitForElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action">
</td>
<td></td>
</tr>
<tr>
<td>assertElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action">
</td>
<td></td>
</tr>
<tr>
<td>click</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action">
</td>
<td></td>
</tr>
</tal:block>
</tal:block>
<tal:block define="header python: '请求新的证书'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '请求新的证书'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '该计算机已拥有一个证书,请在请求新的证书之前吊销已有证书。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block define="header python: '请求新的证书'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_page_header" />
</tal:block>
<tal:block define="header python: '请求新的证书'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_page_header" />
</tal:block>
<tal:block define="header python: 'Computer: TEST-SLAPOSJS-COMPUTER 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: 'Computer: TEST-SLAPOSJS-COMPUTER 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Revoke Certificate</b></td>
</tr>
</tr>
<tal:block define="menu_action python: 'Revoke Certificate'">
<tal:block define="menu_action python: 'Revoke Certificate'">
<tr>
<td colspan="3"><b tal:content="python: 'Click on %s' % menu_action"> Menu Item </b></td>
</tr>
<tr>
<td>waitForElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action">
</td>
<td></td>
</tr>
<tr>
<td>assertElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action">
</td>
<td></td>
</tr>
<tr>
<td>click</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action">
</td>
<td></td>
</tr></tal:block>
</tr>
</tal:block>
<tal:block define="header python: '吊销计算机证书'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '吊销计算机证书'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '证书已吊销。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Try again Request Certificate</b></td>
</tr>
</tr>
<tal:block define="header python: 'Computer: TEST-SLAPOSJS-COMPUTER 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: 'Computer: TEST-SLAPOSJS-COMPUTER 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="menu_action python: 'Request Certificate'">
<tr>
<tal:block define="menu_action python: 'Request Certificate'">
<tr>
<td colspan="3"><b tal:content="python: 'Click on %s' % menu_action"> Menu Item </b></td>
</tr>
<tr>
<td>waitForElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action">
</td>
<td></td>
</tr>
<tr>
<td>assertElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action">
</td>
<td></td>
</tr>
<tr>
<td>click</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action">
</td>
<td></td>
</tr>
</tal:block>
</tal:block>
<tal:block define="header python: '请求新的证书'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '请求新的证书'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '证书已请求。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//textarea[@name="certificate"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//textarea[@name="key"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: '请求新的证书'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_page_header" />
</tal:block>
<tal:block define="header python: '请求新的证书'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_page_header" />
</tal:block>
<tal:block define="header python: 'Computer: TEST-SLAPOSJS-COMPUTER 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: 'Computer: TEST-SLAPOSJS-COMPUTER 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Update Allocation Scope</b></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//select[@id="allocation_scope"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>select</td>
<td>//select[@id="allocation_scope"]</td>
<td>开启(仅朋友)</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/save" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/save" />
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//textarea[@id="subject_list"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//textarea[@id="subject_list"]</td>
<td>demo@user.com</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/save" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/save" />
<tr>
<tr>
<td>assertValue</td>
<td>//textarea[@id="subject_list"]</td>
<td>demo@user.com</td>
</tr>
</tr>
<tal:block define="menu_item python: '服务器'; header menu_item; menu_item_data python: 'Servers'">
<tal:block define="menu_item python: '服务器'; header menu_item; menu_item_data python: 'Servers'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: '服务器'; header menu_item; menu_item_data python: 'Servers'">
<tal:block define="menu_item python: '服务器'; header menu_item; menu_item_data python: 'Servers'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-COMPUTER 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-COMPUTER 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Computer: TEST-SLAPOSJS-COMPUTER 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: 'Computer: TEST-SLAPOSJS-COMPUTER 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Update Allocation Scope</b></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//select[@id="allocation_scope"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>select</td>
<td>//select[@id="allocation_scope"]</td>
<td>永久终止并删除</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/save" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/save" />
<tal:block define="menu_item python: '服务器'; header menu_item; menu_item_data python: 'Servers'">
<tal:block define="menu_item python: '服务器'; header menu_item; menu_item_data python: 'Servers'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: '服务器'; header menu_item; menu_item_data python: 'Servers'">
<tal:block define="menu_item python: '服务器'; header menu_item; menu_item_data python: 'Servers'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_logout" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_logout" />
</tbody></table>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS JS Server Shared By Organisation</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test SlapOS JS Server Shared By Organisation</td></tr>
</thead><tbody>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS JS Server Shared By Organisation</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="document_title python: 'TEST-SLAPOSJS-ORGANISATION-TO-SHARE-COMPUTER 0';">
<tal:block define="document_title python: 'TEST-SLAPOSJS-ORGANISATION-TO-SHARE-COMPUTER 0';">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/create_user_organisation" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="document_title python: 'TEST-SLAPOSJS-COMPUTER-SHARED-BY-ORGANISATION 0';">
<tal:block define="document_title python: 'TEST-SLAPOSJS-COMPUTER-SHARED-BY-ORGANISATION 0';">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/create_simple_computer" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: '服务器'; header menu_item; menu_item_data python: 'Servers'">
<tal:block define="menu_item python: '服务器'; header menu_item; menu_item_data python: 'Servers'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-COMPUTER-SHARED-BY-ORGANISATION 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-COMPUTER-SHARED-BY-ORGANISATION 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n="Computer: TEST-SLAPOSJS-COMPUTER-SHARED-BY-ORGANISATION 0"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td colspan="3"><b tal:content="python: 'Transfer Computer to a Organisation'"> Menu Item </b></td>
</tr>
</tr>
<tal:block tal:define="menu_action python: 'Transfer'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block tal:define="menu_action python: 'Transfer'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="header python: '转移计算机'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '转移计算机'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//select[@name="destination_section"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>select</td>
<td>//select[@name="destination_section"]</td>
<td>TEST-SLAPOSJS-ORGANISATION-TO-SHARE-COMPUTER 0</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '计算机已转移。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: '服务器'; header menu_item; menu_item_data python: 'Servers'">
<tal:block define="menu_item python: '服务器'; header menu_item; menu_item_data python: 'Servers'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-COMPUTER-SHARED-BY-ORGANISATION 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-COMPUTER-SHARED-BY-ORGANISATION 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Computer: TEST-SLAPOSJS-COMPUTER-SHARED-BY-ORGANISATION 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: 'Computer: TEST-SLAPOSJS-COMPUTER-SHARED-BY-ORGANISATION 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td>waitForTextPresent</td>
<td>TEST-SLAPOSJS-COMPUTER-SHARED-BY-ORGANISATION 0</td>
<td></td>
</tr>
</tr>
<tal:block define="person_name python: 'Demo User Functional'">
<tal:block define="person_name python: 'Demo User Functional'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_account" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-ORGANISATION-TO-SHARE-COMPUTER 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-ORGANISATION-TO-SHARE-COMPUTER 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: '组织 : TEST-SLAPOSJS-ORGANISATION-TO-SHARE-COMPUTER 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '组织 : TEST-SLAPOSJS-ORGANISATION-TO-SHARE-COMPUTER 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Invite User/b> </td>
</tr>
<tal:block define="menu_action python: 'Invite User'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_submenu_action" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="header python: '生成新的邀请链接'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block define="header python: '生成新的邀请链接'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '新的邀请链接已生成。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tr>
......@@ -181,11 +185,11 @@
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
......@@ -227,7 +231,7 @@
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
......@@ -241,7 +245,7 @@
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
......@@ -257,7 +261,7 @@
</tr>
<tal:block define="header python: 'Computer: TEST-SLAPOSJS-COMPUTER-SHARED-BY-ORGANISATION 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_logout" />
......
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS JS Server Shared By Project</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test RenderJS UI</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS JS Server Shared By Project</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="document_title python: 'TEST-SLAPOSJS-PROJECT-TO-SHARE-COMPUTER 0';">
<tal:block define="document_title python: 'TEST-SLAPOSJS-PROJECT-TO-SHARE-COMPUTER 0';">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/create_simple_project" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="document_title python: 'TEST-SLAPOSJS-COMPUTER-SHARED-BY-PROJECT 0';">
<tal:block define="document_title python: 'TEST-SLAPOSJS-COMPUTER-SHARED-BY-PROJECT 0';">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/create_simple_computer" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b tal:content="python: 'Transfer Computer to a Project'"> Menu Item </b></td>
</tr>
</tr>
<tal:block tal:define="menu_action python: 'Transfer'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block tal:define="menu_action python: 'Transfer'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="header python: '转移计算机'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '转移计算机'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//select[@name="destination_project"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>select</td>
<td>//select[@name="destination_project"]</td>
<td>TEST-SLAPOSJS-PROJECT-TO-SHARE-COMPUTER 0</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '计算机已转移。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: '服务器'; header menu_item; menu_item_data python: 'Servers'">
<tal:block define="menu_item python: '服务器'; header menu_item; menu_item_data python: 'Servers'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-COMPUTER-SHARED-BY-PROJECT 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-COMPUTER-SHARED-BY-PROJECT 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Computer: TEST-SLAPOSJS-COMPUTER-SHARED-BY-PROJECT 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: 'Computer: TEST-SLAPOSJS-COMPUTER-SHARED-BY-PROJECT 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td>waitForTextPresent</td>
<td>TEST-SLAPOSJS-PROJECT-TO-SHARE-COMPUTER 0</td>
<td></td>
</tr>
</tr>
<tal:block define="menu_item python: '项目'; header menu_item; menu_item_data python: 'Projects'">
<tal:block define="menu_item python: '项目'; header menu_item; menu_item_data python: 'Projects'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-PROJECT-TO-SHARE-COMPUTER 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-PROJECT-TO-SHARE-COMPUTER 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: '项目 : TEST-SLAPOSJS-PROJECT-TO-SHARE-COMPUTER 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '项目 : TEST-SLAPOSJS-PROJECT-TO-SHARE-COMPUTER 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Invite User/b> </td>
</tr>
<tal:block define="menu_action python: 'Invite User'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_submenu_action" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="header python: '生成新的邀请链接'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block define="header python: '生成新的邀请链接'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '新的邀请链接已生成。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tr>
......@@ -156,7 +157,7 @@
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
......@@ -198,7 +199,7 @@
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
......@@ -212,7 +213,7 @@
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
......@@ -228,7 +229,7 @@
</tr>
<tal:block define="header python: 'Computer: TEST-SLAPOSJS-COMPUTER-SHARED-BY-PROJECT 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_logout" />
......
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS JS Server Token</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test SlapOS JS Server Token</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="menu_item python: '服务器'; header menu_item; menu_item_data python: 'Servers'">
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS JS Server Token</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="menu_item python: '服务器'; header menu_item; menu_item_data python: 'Servers'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td colspan="3"><b tal:content="python: 'Click on Token'"> Menu Item </b></td>
</tr>
</tr>
<tal:block define="menu_action python: 'Token'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="menu_action python: 'Token'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="header python: '请求新令牌'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '请求新令牌'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '令牌已请求。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//label[text()="您的令牌"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//label[text()="您的令牌"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_erp5_field_string.html\')]//p[contains(text(), \'%s%02d%02d-\')]' % (DateTime().year(),DateTime().month(),DateTime().day())"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_erp5_field_string.html\')]//p[contains(text(), \'%s%02d%02d-\')]' % (DateTime().year(),DateTime().month(),DateTime().day())">
</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_erp5_field_string.html\')]//p[contains(text(), \'%s%02d%02d-\')]' % (DateTime().year(),DateTime().month(),DateTime().day())"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_erp5_field_string.html\')]//p[contains(text(), \'%s%02d%02d-\')]' % (DateTime().year(),DateTime().month(),DateTime().day())">
</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: '请求新令牌'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_page_header" />
</tal:block>
<tal:block define="header python: '请求新令牌'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_page_header" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_erp5_field_listbox.html\')]//h1[contains(text(), \'服务器\')]'"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_erp5_field_listbox.html\')]//h1[contains(text(), \'服务器\')]'">
</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_erp5_field_listbox.html\')]//h1[contains(text(), \'服务器\')]'"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_erp5_field_listbox.html\')]//h1[contains(text(), \'服务器\')]'">
</td>
<td></td>
</tr>
</tr>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_logout" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_logout" />
</tbody></table>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS JS Service</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test SlapOS JS Service</td></tr>
</thead><tbody>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS JS Service</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python:'Services'">
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python:'Services'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block define="menu_action python: 'Add'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="menu_action python: 'Add'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Request a Software </b></td>
</tr>
</tr>
<tal:block define="software_product python: 'Frontend'">
<tal:block define="software_product python: 'Frontend'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/select_software_product" />
</tal:block>
</tal:block>
<tal:block define="software_release python: 'Frontend'">
<tal:block define="software_release python: 'Frontend'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/select_software_release" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Fill Request form </b></td>
</tr>
</tr>
<tal:block define="header python: '3/3 请求服务: Frontend'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '3/3 请求服务: Frontend'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@id="title"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@id="title"]</td>
<td>TEST-SLAPOSJS-SERVICE-FRONTEND 0</td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]
</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]
</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>select</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>Custom Personal</td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@name="//public-ipv4"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@name="//public-ipv4"]</td>
<td>http://www.erp5.com</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '已创建新的服务。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python:'Services'">
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python:'Services'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-SERVICE-FRONTEND 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-SERVICE-FRONTEND 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n="托管订阅: TEST-SLAPOSJS-SERVICE-FRONTEND 0"]</td>
<td></td>
</tr>
</tr>
<!-- Update Parameters -->
<!-- Update Add Ticket -->
<!-- Update Stop -->
<!-- Update Start -->
<!-- Update Parameters -->
<!-- Update Add Ticket -->
<!-- Update Stop -->
<!-- Update Start -->
<tal:block define="menu_action python: 'Destroy'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="menu_action python: 'Destroy'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="header python: '销毁托管订阅: TEST-SLAPOSJS-SERVICE-FRONTEND 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block define="header python: '销毁托管订阅: TEST-SLAPOSJS-SERVICE-FRONTEND 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '服务已销毁。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python:'Services'">
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python:'Services'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_logout" />
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_logout" />
</tbody></table>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS JS Service Duplicated Request</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test SlapOS JS Service Duplicated Request</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python:'Services'">
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS JS Service Duplicated Request</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python:'Services'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block define="menu_action python: 'Add'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="menu_action python: 'Add'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Request a Software </b></td>
</tr>
</tr>
<tal:block define="software_product python: 'Frontend'">
<tal:block define="software_product python: 'Frontend'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/select_software_product" />
</tal:block>
</tal:block>
<tal:block define="software_release python: 'Frontend'">
<tal:block define="software_release python: 'Frontend'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/select_software_release" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Fill Request form </b></td>
</tr>
</tr>
<tal:block define="header python: '3/3 请求服务: Frontend'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '3/3 请求服务: Frontend'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@id="title"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@id="title"]</td>
<td>TEST-SLAPOSJS-SERVICE-FRONTEND 0</td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]
</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]
</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>select</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>Custom Personal</td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@name="//public-ipv4"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@name="//public-ipv4"]</td>
<td>http://www.erp5.com</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '已创建新的服务。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python:'Services'">
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python:'Services'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-SERVICE-FRONTEND 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="menu_action python: 'Add'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="menu_action python: 'Add'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Request a Software </b></td>
</tr>
</tr>
<tal:block define="software_product python: 'Frontend'">
<tal:block define="software_product python: 'Frontend'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/select_software_product" />
</tal:block>
</tal:block>
<tal:block define="software_release python: 'Frontend'">
<tal:block define="software_release python: 'Frontend'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/select_software_release" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Fill Request form </b></td>
</tr>
</tr>
<tal:block define="header python: '3/3 请求服务: Frontend'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '3/3 请求服务: Frontend'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@id="title"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@id="title"]</td>
<td>TEST-SLAPOSJS-SERVICE-FRONTEND 0</td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]
</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]
</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>select</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>Custom Personal</td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@name="//public-ipv4"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@name="//public-ipv4"]</td>
<td>http://www.erp5.com</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'error',
<tal:block tal:define="notification_configuration python: {'class': 'error',
'text': 'A service with this title already exists.'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python:'Services'">
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python:'Services'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-SERVICE-FRONTEND 0"]</td>
<td></td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_logout" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_logout" />
</tbody></table>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS JS Service JSON Serialisation</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test SlapOS JS Service JSON Serialisation</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python:'Services'">
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS JS Service JSON Serialisation</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python:'Services'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block define="menu_action python: 'Add'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="menu_action python: 'Add'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Request a Software </b></td>
</tr>
</tr>
<tal:block define="software_product python: 'KVM'">
<tal:block define="software_product python: 'KVM'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/select_software_product" />
</tal:block>
</tal:block>
<tal:block define="software_release python: 'KVM'">
<tal:block define="software_release python: 'KVM'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/select_software_release" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Fill Request form </b></td>
</tr>
</tr>
<tal:block define="header python: '3/3 请求服务: KVM'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '3/3 请求服务: KVM'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@id="title"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@id="title"]</td>
<td>TEST-SLAPOSJS-SERVICE-KVM-CLUSTER 0</td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Cluster"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Cluster"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Cluster"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Cluster"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>select</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>Cluster</td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@name="ADD//kvm-partition-dict"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@name="ADD//kvm-partition-dict"]</td>
<td>KVM-CLUSTER-INSTANCE-0</td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//button[@name="//kvm-partition-dict"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>click</td>
<td>//button[@name="//kvm-partition-dict"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@name="//kvm-partition-dict/KVM-CLUSTER-INSTANCE-0/disk-size"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@name="//kvm-partition-dict/KVM-CLUSTER-INSTANCE-0/disk-size"]</td>
<td>10</td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@name="ADD//kvm-partition-dict"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@name="ADD//kvm-partition-dict"]</td>
<td>KVM-CLUSTER-INSTANCE-1</td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//button[@name="//kvm-partition-dict"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>click</td>
<td>//button[@name="//kvm-partition-dict"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@name="//kvm-partition-dict/KVM-CLUSTER-INSTANCE-1/disk-size"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@name="//kvm-partition-dict/KVM-CLUSTER-INSTANCE-1/disk-size"]</td>
<td>20</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '已创建新的服务。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python:'Services'">
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python:'Services'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-SERVICE-KVM-CLUSTER 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-SERVICE-KVM-CLUSTER 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n="托管订阅: TEST-SLAPOSJS-SERVICE-KVM-CLUSTER 0"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@name="//kvm-partition-dict/KVM-CLUSTER-INSTANCE-1/disk-size"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>assertElementPresent</td>
<td>//input[@name="//kvm-partition-dict/KVM-CLUSTER-INSTANCE-1/disk-size"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@name="//kvm-partition-dict/KVM-CLUSTER-INSTANCE-0/disk-size"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>assertElementPresent</td>
<td>//input[@name="//kvm-partition-dict/KVM-CLUSTER-INSTANCE-0/disk-size"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//span[@class="bt_close CLOSE//kvm-partition-dict/KVM-CLUSTER-INSTANCE-1"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>click</td>
<td>//span[@class="bt_close CLOSE//kvm-partition-dict/KVM-CLUSTER-INSTANCE-1"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>pause</td>
<td>1000</td>
<td>2000</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_save" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_save" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '数据已更新。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python: 'Services'">
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python: 'Services'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-SERVICE-KVM-CLUSTER 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-SERVICE-KVM-CLUSTER 0"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n="托管订阅: TEST-SLAPOSJS-SERVICE-KVM-CLUSTER 0"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@name="//kvm-partition-dict/KVM-CLUSTER-INSTANCE-0/disk-size"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>assertElementPresent</td>
<td>//input[@name="//kvm-partition-dict/KVM-CLUSTER-INSTANCE-0/disk-size"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>assertElementNotPresent</td>
<td>//input[@name="//kvm-partition-dict/KVM-CLUSTER-INSTANCE-1/disk-size"]</td>
<td></td>
</tr>
</tr>
<tal:block define="menu_action python: 'Destroy'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="menu_action python: 'Destroy'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="header python: '销毁托管订阅: TEST-SLAPOSJS-SERVICE-KVM-CLUSTER 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block define="header python: '销毁托管订阅: TEST-SLAPOSJS-SERVICE-KVM-CLUSTER 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '服务已销毁。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python:'Services'">
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python:'Services'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_logout" />
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_logout" />
</tbody></table>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS JS Service Shared By Organisation</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test SlapOS JS Service Shared By Organisation</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS JS Service Shared By Organisation</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="document_title python: 'TEST-SLAPOSJS-ORGANISATION-TO-SHARE-SERVICE 0';">
<tal:block define="document_title python: 'TEST-SLAPOSJS-ORGANISATION-TO-SHARE-SERVICE 0';">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/create_user_organisation" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python:'Services'">
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python:'Services'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block define="menu_action python: 'Add'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="menu_action python: 'Add'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Request a Software </b></td>
</tr>
</tr>
<tr>
<tr>
<td colspan="3"><b> Select a Software Product</b></td>
</tr>
</tr>
<tal:block define="header python: '1/3 选择一个软件'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '1/3 选择一个软件'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_field_listbox.html')]//h1[contains(text(), '软件产品')]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_field_listbox.html')]//h1[contains(text(), '软件产品')]</td>
<td></td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_listbox_loaded" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_listbox_loaded" />
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//td/a[text()="Frontend"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//td/a[text()="Frontend"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td colspan="3"><b> Select a Software Release</b></td>
</tr>
</tr>
<tal:block define="header python: '2/3 选择一个发布'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '2/3 选择一个发布'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_field_listbox.html')]//h1[contains(text(), '软件发布')]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_field_listbox.html')]//h1[contains(text(), '软件发布')]</td>
<td></td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_listbox_loaded" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_listbox_loaded" />
<tr>
<tr>
<td>click</td>
<td>//td/a[text()="Frontend"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td colspan="3"><b> Fill Request form </b></td>
</tr>
</tr>
<tal:block define="header python: '3/3 请求服务: Frontend'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '3/3 请求服务: Frontend'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@id="title"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@id="title"]</td>
<td>TEST-SLAPOSJS-SERVICE-SHARED-BY-ORGANISATION 0</td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]
</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]
</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>select</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>Custom Personal</td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@name="//public-ipv4"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@name="//public-ipv4"]</td>
<td>http://www.erp5.com</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '已创建新的服务。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python:'Services'">
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python:'Services'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-SERVICE-SHARED-BY-ORGANISATION 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-SERVICE-SHARED-BY-ORGANISATION 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n="托管订阅: TEST-SLAPOSJS-SERVICE-SHARED-BY-ORGANISATION 0"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td colspan="3"><b tal:content="python: 'Transfer Service to a Organisation'"> Menu Item </b></td>
</tr>
</tr>
<tal:block tal:define="menu_action python: 'Transfer'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block tal:define="menu_action python: 'Transfer'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="header python: '转移服务'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '转移服务'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//select[@name="destination"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>select</td>
<td>//select[@name="destination"]</td>
<td>TEST-SLAPOSJS-ORGANISATION-TO-SHARE-SERVICE 0</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': 'Service is transferred.'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python:'Services'">
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python:'Services'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-SERVICE-SHARED-BY-ORGANISATION 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-SERVICE-SHARED-BY-ORGANISATION 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: '托管订阅: TEST-SLAPOSJS-SERVICE-SHARED-BY-ORGANISATION 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '托管订阅: TEST-SLAPOSJS-SERVICE-SHARED-BY-ORGANISATION 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td>waitForTextPresent</td>
<td>TEST-SLAPOSJS-ORGANISATION-TO-SHARE-SERVICE 0</td>
<td></td>
</tr>
</tr>
<tal:block define="person_name python: 'Demo User Functional'">
<tal:block define="person_name python: 'Demo User Functional'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_account" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-ORGANISATION-TO-SHARE-SERVICE 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-ORGANISATION-TO-SHARE-SERVICE 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: '组织 : TEST-SLAPOSJS-ORGANISATION-TO-SHARE-SERVICE 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '组织 : TEST-SLAPOSJS-ORGANISATION-TO-SHARE-SERVICE 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Invite User/b> </td>
</tr>
<tal:block define="menu_action python: 'Invite User'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_submenu_action" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="header python: '生成新的邀请链接'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block define="header python: '生成新的邀请链接'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '新的邀请链接已生成。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tr>
......@@ -322,11 +330,11 @@
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
......@@ -368,7 +376,7 @@
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
......@@ -382,7 +390,7 @@
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
......@@ -398,7 +406,7 @@
</tr>
<tal:block define="header python: '托管订阅: TEST-SLAPOSJS-SERVICE-SHARED-BY-ORGANISATION 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_logout" />
......
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS JS Service Shared By Project</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test SlapOS JS Service Shared By Project</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS JS Service Shared By Project</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="document_title python: 'TEST-SLAPOSJS-PROJECT-TO-SHARE-SERVICE 0';">
<tal:block define="document_title python: 'TEST-SLAPOSJS-PROJECT-TO-SHARE-SERVICE 0';">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/create_simple_project" />
</tal:block>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python:'Services'">
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python:'Services'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block define="menu_action python: 'Add'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="menu_action python: 'Add'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Request a Software </b></td>
</tr>
</tr>
<tr>
<tr>
<td colspan="3"><b> Select a Software Product</b></td>
</tr>
</tr>
<tal:block define="header python: '1/3 选择一个软件'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '1/3 选择一个软件'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_field_listbox.html')]//h1[contains(text(), '软件产品')]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_field_listbox.html')]//h1[contains(text(), '软件产品')]</td>
<td></td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_listbox_loaded" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_listbox_loaded" />
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//td/a[text()="Frontend"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//td/a[text()="Frontend"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td colspan="3"><b> Select a Software Release</b></td>
</tr>
</tr>
<tal:block define="header python: '2/3 选择一个发布'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '2/3 选择一个发布'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_field_listbox.html')]//h1[contains(text(), '软件发布')]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_field_listbox.html')]//h1[contains(text(), '软件发布')]</td>
<td></td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_listbox_loaded" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_listbox_loaded" />
<tr>
<tr>
<td>click</td>
<td>//td/a[text()="Frontend"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td colspan="3"><b> Fill Request form </b></td>
</tr>
</tr>
<tal:block define="header python: '3/3 请求服务: Frontend'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '3/3 请求服务: Frontend'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@id="title"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@id="title"]</td>
<td>TEST-SLAPOSJS-SERVICE-SHARED-BY-PROJECT 0</td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]
</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]
</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>select</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>Custom Personal</td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@name="//public-ipv4"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@name="//public-ipv4"]</td>
<td>http://www.erp5.com</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '已创建新的服务。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python:'Services'">
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python:'Services'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-SERVICE-SHARED-BY-PROJECT 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-SERVICE-SHARED-BY-PROJECT 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n="托管订阅: TEST-SLAPOSJS-SERVICE-SHARED-BY-PROJECT 0"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td colspan="3"><b tal:content="python: 'Transfer Service to a Project'"> Menu Item </b></td>
</tr>
</tr>
<tal:block tal:define="menu_action python: 'Transfer'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block tal:define="menu_action python: 'Transfer'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="header python: '转移服务'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '转移服务'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//select[@name="destination_project"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>select</td>
<td>//select[@name="destination_project"]</td>
<td>TEST-SLAPOSJS-PROJECT-TO-SHARE-SERVICE 0</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': 'Service is transferred.'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python:'Services'">
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python:'Services'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-SERVICE-SHARED-BY-PROJECT 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-SERVICE-SHARED-BY-PROJECT 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: '托管订阅: TEST-SLAPOSJS-SERVICE-SHARED-BY-PROJECT 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '托管订阅: TEST-SLAPOSJS-SERVICE-SHARED-BY-PROJECT 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td>waitForTextPresent</td>
<td>TEST-SLAPOSJS-SERVICE-SHARED-BY-PROJECT 0</td>
<td></td>
</tr>
</tr>
<tal:block define="menu_item python: '项目'; header menu_item; menu_item_data python:'Projects'">
<tal:block define="menu_item python: '项目'; header menu_item; menu_item_data python:'Projects'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-PROJECT-TO-SHARE-SERVICE 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-PROJECT-TO-SHARE-SERVICE 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: '项目 : TEST-SLAPOSJS-PROJECT-TO-SHARE-SERVICE 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '项目 : TEST-SLAPOSJS-PROJECT-TO-SHARE-SERVICE 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Invite User/b> </td>
</tr>
<tal:block define="menu_action python: 'Invite User'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_submenu_action" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="header python: '生成新的邀请链接'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block define="header python: '生成新的邀请链接'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '新的邀请链接已生成。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tr>
......@@ -322,7 +330,7 @@
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
......@@ -364,7 +372,7 @@
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
......@@ -378,7 +386,7 @@
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
......@@ -394,7 +402,7 @@
</tr>
<tal:block define="header python: '托管订阅: TEST-SLAPOSJS-SERVICE-SHARED-BY-PROJECT 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_logout" />
......
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS JS Service Slave</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test SlapOS JS Service Slave</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python:'Services'">
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS JS Service Slave</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python:'Services'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block define="menu_action python: 'Add'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="menu_action python: 'Add'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Request a Software </b></td>
</tr>
</tr>
<tal:block define="software_product python: 'Frontend'">
<tal:block define="software_product python: 'Frontend'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/select_software_product" />
</tal:block>
</tal:block>
<tal:block define="software_release python: 'Frontend'">
<tal:block define="software_release python: 'Frontend'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/select_software_release" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Fill Request form </b></td>
</tr>
</tr>
<tal:block define="header python: '3/3 请求服务: Frontend'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '3/3 请求服务: Frontend'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@id="title"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@id="title"]</td>
<td>TEST-SLAPOSJS-SERVICE-FRONTEND 0</td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]
</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]
</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>select</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>Custom Personal (Slave) </td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@name="//url"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@name="//url"]</td>
<td>http://www.erp5.com</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '已创建新的服务。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python:'Services'">
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python:'Services'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-SERVICE-FRONTEND 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-SERVICE-FRONTEND 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n="Hosting Subscription: TEST-SLAPOSJS-SERVICE-FRONTEND 0"]</td>
<td></td>
</tr>
</tr>
<!-- Update Parameters -->
<!-- Update Add Ticket -->
<!-- Update Stop -->
<!-- Update Start -->
<!-- Update Parameters -->
<!-- Update Add Ticket -->
<!-- Update Stop -->
<!-- Update Start -->
<tal:block define="menu_action python: 'Destroy'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="menu_action python: 'Destroy'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="header python: '销毁托管订阅: TEST-SLAPOSJS-SERVICE-FRONTEND 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block define="header python: '销毁托管订阅: TEST-SLAPOSJS-SERVICE-FRONTEND 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '服务已销毁。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python:'Services'">
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python:'Services'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_logout" />
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_logout" />
</tbody></table>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS JS Site</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test SlapOS JS Site</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="menu_item python: '站点'; header menu_item; menu_item_data python:'Sites'">
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS JS Site</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="menu_item python: '站点'; header menu_item; menu_item_data python:'Sites'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block define="title python: 'TEST-SLAPOSJS-SET 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/add_simple_with_title" />
</tal:block>
<tal:block define="title python: 'TEST-SLAPOSJS-SET 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/add_simple_with_title" />
</tal:block>
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '新的站点已创建。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_content_loaded" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_content_loaded" />
<tal:block define="header python: 'Site : TEST-SLAPOSJS-SET 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: 'Site : TEST-SLAPOSJS-SET 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td>type</td>
<td>//input[@id="default_geographical_location_longitude"]</td>
<td>3.077475</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@id="default_geographical_location_latitude"]</td>
<td>50.644353</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/save" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/save" />
<!-- check site -->
<!-- check site -->
<!-- Broken history to return
<!-- Broken history to return
<tr>
<td>click</td>
<td>//a[@data-i18n="Site : TEST-SLAPOSJS-SET 0"]</td>
......@@ -63,50 +64,52 @@
</tr>
-->
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: '站点'; header menu_item; menu_item_data python:'Sites'">
<tal:block define="menu_item python: '站点'; header menu_item; menu_item_data python:'Sites'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-SET 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-SET 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: 'Site : TEST-SLAPOSJS-SET 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: 'Site : TEST-SLAPOSJS-SET 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block tal:define="delete_configuration python: {'header_title': '删除站点: TEST-SLAPOSJS-SET 0',
<tal:block tal:define="delete_configuration python: {'header_title': '删除站点: TEST-SLAPOSJS-SET 0',
'notification_text': '站点已删除。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/delete_simple" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/delete_simple" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: '站点'; header menu_item; menu_item_data python:'Sites'">
<tal:block define="menu_item python: '站点'; header menu_item; menu_item_data python:'Sites'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_logout" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_logout" />
</tbody></table>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS JS Subscribe</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test SlapOS JS Subscribe</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS JS Subscribe</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tr>
<tr>
<td>assertTextPresent</td>
<td>Done.</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>open</td>
<td>${base_url}/ERP5Site_removeTestUserList</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertTextPresent</td>
<td>Done.</td>
<td></td>
</tr>
<tal:block metal:use-macro="here/Zuite_CommonTemplate/macros/wait_for_activities" />
</tr>
<tal:block metal:use-macro="here/Zuite_CommonTemplate/macros/wait_for_activities" />
<tr>
<tr>
<td>assertTextPresent</td>
<td>Done.</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>open</td>
<td>${base_url}/web_site_module/hostingjs/WebSite_logout</td>
<td></td>
</tr>
</tr>
<!-- Initialize -->
<tr>
<!-- Initialize -->
<tr>
<td>open</td>
<td>${base_url}/web_site_module/hostingjs/zh/</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@value='登录']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()=' Create New Account ']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>clickAndWait</td>
<td>//a[text()=' Create New Account ']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@name='first_name']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@name='first_name']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@value='Register']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='first_name']</td>
<td>Test</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='last_name']</td>
<td>User</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='default_email_text']</td>
<td>demo@nexedi.com</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='reference']</td>
<td>testSlapOSJSSubscribeUser</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='password']</td>
<td>testSlapOSJSSubscribeUser</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='password_confirmation']</td>
<td>testSlapOSJSSubscribeUser</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='career_subordination_title']</td>
<td>testSlapOSJSSubscribeOrganisation</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='default_telefone_text']</td>
<td>1234567890</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='default_address_street_address']</td>
<td>1234567890</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='default_address_zip_code']</td>
<td>75000</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='default_address_city']</td>
<td>Paris</td>
</tr>
<tr>
</tr>
<tr>
<td>select</td>
<td>//select[@name='default_address_region']</td>
<td>France</td>
</tr>
<tr>
</tr>
<tr>
<td>assertTextPresent</td>
<td>You will receive a confirmation email to activate your account.</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>clickAndWait</td>
<td>//input[@value='Register']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertTextNotPresent</td>
<td>Selected login is already in use, please choose different one.</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@value='登录']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertTextPresent</td>
<td>Credential Request Created.</td>
<td></td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_CommonTemplate/macros/wait_for_activities" />
<tal:block metal:use-macro="here/Zuite_CommonTemplate/macros/wait_for_activities" />
<tr>
<tr>
<td>assertTextPresent</td>
<td>Done.</td>
<td></td>
</tr>
</tr>
<!-- Initialize -->
<tr>
<!-- Initialize -->
<tr>
<td>open</td>
<td>${base_url}/web_site_module/hostingjs/zh/</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>__ac_name</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>__ac_name</td>
<td>testSlapOSJSSubscribeUser</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>__ac_password</td>
<td>testSlapOSJSSubscribeUser</td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@value="登录"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>clickAndWait</td>
<td>//input[@value="登录"]</td>
<td></td>
</tr>
</tr>
<!-- Logout -->
<!-- Logout -->
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//button[@data-i18n='Menu']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//button[@data-i18n='Menu']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n='Logout']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[@data-i18n='Logout']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@value='确认']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//input[@value='确认']</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@value='登录']</td>
<td></td>
</tr>
</tr>
</tbody></table>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS JS Subscription Access Denied</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test SlapOS JS Subscription Access Denied</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS JS Subscription Access Denied</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python:'Services'">
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python:'Services'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block define="menu_action python: 'Add'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="menu_action python: 'Add'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Request a Software </b></td>
</tr>
</tr>
<tal:block define="software_product python: 'Frontend'">
<tal:block define="software_product python: 'Frontend'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/select_software_product" />
</tal:block>
</tal:block>
<tal:block define="software_release python: 'Frontend'">
<tal:block define="software_release python: 'Frontend'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/select_software_release" />
</tal:block>
</tal:block>
<tr>
<tr>
<td colspan="3"><b> Fill Request form </b></td>
</tr>
</tr>
<tal:block define="header python: '3/3 请求服务: Frontend'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '3/3 请求服务: Frontend'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@id="title"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@id="title"]</td>
<td>TEST-SLAPOSJS-SERVICE-FRONTEND 0</td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]
</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]//option[text()="Custom Personal"]
</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>select</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>//div[contains(@data-gadget-url,
'gadget_erp5_page_slap_parameter_form.html')]//select[@name="software_type"]</td>
<td>Custom Personal</td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@name="//public-ipv4"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>type</td>
<td>//input[@name="//public-ipv4"]</td>
<td>http://www.erp5.com</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '已创建新的服务。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python:'Services'">
<tal:block define="menu_item python: '服务'; header menu_item; menu_item_data python:'Services'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-SERVICE-FRONTEND 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-SERVICE-FRONTEND 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[@data-i18n="托管订阅: TEST-SLAPOSJS-SERVICE-FRONTEND 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>storeLocation</td>
<td>hosting_subscription_link</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>echo</td>
<td>${hosting_subscription_link}</td>
<td></td>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_logout" />
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_logout" />
<!-- Initialize -->
<!-- Initialize -->
<tr>
<tr>
<td>open</td>
<td>${base_url}/web_site_module/hostingjs/zh/</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@value='登录']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()=' Create New Account ']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>clickAndWait</td>
<td>//a[text()=' Create New Account ']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@name='first_name']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@name='first_name']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@value='Register']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='first_name']</td>
<td>Test</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='last_name']</td>
<td>User</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='default_email_text']</td>
<td>demo@nexedi.com</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='reference']</td>
<td>testSlapOSJSSubscribeUser</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='password']</td>
<td>testSlapOSJSSubscribeUser</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='password_confirmation']</td>
<td>testSlapOSJSSubscribeUser</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='career_subordination_title']</td>
<td>testSlapOSJSSubscribeOrganisation</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='default_telefone_text']</td>
<td>1234567890</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='default_address_street_address']</td>
<td>1234567890</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='default_address_zip_code']</td>
<td>75000</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@name='default_address_city']</td>
<td>Paris</td>
</tr>
<tr>
<td>type</td>
<td>//input[@name='default_address_country']</td>
</tr>
<tr>
<td>select</td>
<td>//select[@name='default_address_region']</td>
<td>France</td>
</tr>
<tr>
</tr>
<tr>
<td>assertTextPresent</td>
<td>You will receive a confirmation email to activate your account.</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>clickAndWait</td>
<td>//input[@value='Register']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertTextNotPresent</td>
<td>Selected login is already in use, please choose different one.</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@value='登录']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>assertTextPresent</td>
<td>Credential Request Created.</td>
<td></td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_CommonTemplate/macros/wait_for_activities" />
<tal:block metal:use-macro="here/Zuite_CommonTemplate/macros/wait_for_activities" />
<tr>
<tr>
<td>assertTextPresent</td>
<td>Done.</td>
<td></td>
</tr>
</tr>
<!-- Go to hosting subscription, it should show the login page because we are not logged in yet, and then login with the "wrong" user to see if the error message is correctly displayed -->
<tr>
<!-- Go to hosting subscription, it should show the login page because we are not logged in yet, and then login with the "wrong" user to see if the error message is correctly displayed -->
<tr>
<td>open</td>
<td>${hosting_subscription_link}</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>__ac_name</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>__ac_name</td>
<td>testSlapOSJSSubscribeUser</td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>__ac_password</td>
<td>testSlapOSJSSubscribeUser</td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@value="登录"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>clickAndWait</td>
<td>//input[@value="登录"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//button[@data-i18n='Menu']</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForTextPresent</td>
<td>You are not allowed to access this content</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>clickAndWait</td>
<td>//input[@value="退出"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@value="登录"]</td>
<td></td>
</tr>
</tbody></table>
</tr>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
<html xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<html xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapJS UI</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test SlapOS JS Ticket</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">Test SlapOS JS Ticket</td></tr>
</thead><tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="menu_item python: '工单'; header menu_item; menu_item_data python: 'Tickets'">
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr>
<td rowspan="1" colspan="3">Test SlapOS JS Ticket</td>
</tr>
</thead>
<tbody>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_init" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_login" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_front_page" />
<tal:block define="menu_item python: '工单'; header menu_item; menu_item_data python: 'Tickets'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td colspan="3"><b tal:content="python: 'Add an Support Request'"> Menu Item </b></td>
</tr>
</tr>
<tal:block define="menu_action python: 'Add'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="menu_action python: 'Add'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@id="title"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//input[@id="title"]</td>
<td>TEST-SLAPOSJS-SUPPORT-REQUEST 0</td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//textarea[@id="description"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//textarea[@id="description"]</td>
<td>TEST-SLAPOSJS-SUPPORT-REQUEST DESCRIPTION</td>
</tr>
</tr>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//select[@id="resource"]</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>select</td>
<td>//select[@id="resource"]</td>
<td>Complaint</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '新的集合已创建。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_content_loaded" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_content_loaded" />
<tal:block define="header python: '客户支持请求 : TEST-SLAPOSJS-SUPPORT-REQUEST 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '客户支持请求 : TEST-SLAPOSJS-SUPPORT-REQUEST 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td>verifyElementNotPresent</td>
<td>//button[@type="submit" and @data-i18n="Save"]</td>
<td></td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: '工单'; header menu_item; menu_item_data python: 'Tickets'">
<tal:block define="menu_item python: '工单'; header menu_item; menu_item_data python: 'Tickets'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-SUPPORT-REQUEST 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-SUPPORT-REQUEST 0"]</td>
<td></td>
</tr>
<tal:block define="header python: '客户支持请求 : TEST-SLAPOSJS-SUPPORT-REQUEST 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
</tr>
<tal:block define="header python: '客户支持请求 : TEST-SLAPOSJS-SUPPORT-REQUEST 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<td>verifyTextPresent</td>
<td>Demo User Functional</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>verifyTextPresent</td>
<td>TEST-SLAPOSJS-SUPPORT-REQUEST 0</td>
<td></td>
</tr>
</tr>
<tr>
<tr>
<td>verifyTextPresent</td>
<td>TEST-SLAPOSJS-SUPPORT-REQUEST DESCRIPTION</td>
<td></td>
</tr>
</tr>
<tal:block tal:define="menu_action python: 'Add'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block tal:define="menu_action python: 'Add'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block tal:define="header python: '新的信息'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block tal:define="header python: '新的信息'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//textarea[@id="text_content"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>type</td>
<td>//textarea[@id="text_content"]</td>
<td>TEST-SLAPOSJS-SUPPORT-REQUEST NEW MESSAGE</td>
</tr>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="header python: '客户支持请求 : TEST-SLAPOSJS-SUPPORT-REQUEST 0'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block tal:define="header python: '客户支持请求 : TEST-SLAPOSJS-SUPPORT-REQUEST 0'">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page" />
<tal:block define="menu_item python: '工单'; header menu_item; menu_item_data python: 'Tickets'">
<tal:block define="menu_item python: '工单'; header menu_item; menu_item_data python: 'Tickets'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()="TEST-SLAPOSJS-SUPPORT-REQUEST 0"]</td>
<td></td>
</tr>
<tr>
</tr>
<tr>
<td>click</td>
<td>//a[text()="TEST-SLAPOSJS-SUPPORT-REQUEST 0"]</td>
<td></td>
</tr>
</tr>
<tal:block define="header python: '客户支持请求 : TEST-SLAPOSJS-SUPPORT-REQUEST 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block define="header python: '客户支持请求 : TEST-SLAPOSJS-SUPPORT-REQUEST 0'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(2)', 'footer': '2 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(2)', 'footer': '2 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tr>
<tr>
<td>verifyTextPresent</td>
<td>TEST-SLAPOSJS-SUPPORT-REQUEST NEW MESSAGE</td>
<td></td>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_logout" />
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_logout" />
</tbody></table>
</tbody>
</table>
</body>
</html>
\ No newline at end of file
context.WebSection_newCredentialRequest(
reference="demo_functional_user",
default_email_text="demo@nexedi.com",
first_name="Demo User",
last_name="Functional",
password="demo_functional_user",
default_telephone_text="12345678",
corporate_name="Nexedi",
default_address_city="Campos",
default_address_street_address="Av Pelinca",
default_address_zip_code="28480",
batch_mode=1
)
context.WebSection_newCredentialRequest(
reference="another_demo_functional_user",
default_email_text="another_demo@nexedi.com",
first_name="Another Demo User",
last_name="Functional",
password="another_demo_functional_user",
default_telephone_text="12345678",
corporate_name="Nexedi",
default_address_city="Campos",
default_address_street_address="Av Pelinca",
default_address_zip_code="28480",
batch_mode=1
)
return "Done."
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="PythonScript" module="Products.PythonScripts.PythonScript"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>Script_magic</string> </key>
<value> <int>3</int> </value>
</item>
<item>
<key> <string>_bind_names</string> </key>
<value>
<object>
<klass>
<global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
</klass>
<tuple/>
<state>
<dictionary>
<item>
<key> <string>_asgns</string> </key>
<value>
<dictionary>
<item>
<key> <string>name_container</string> </key>
<value> <string>container</string> </value>
</item>
<item>
<key> <string>name_context</string> </key>
<value> <string>context</string> </value>
</item>
<item>
<key> <string>name_m_self</string> </key>
<value> <string>script</string> </value>
</item>
<item>
<key> <string>name_subpath</string> </key>
<value> <string>traverse_subpath</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key> <string>_params</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>_proxy_roles</string> </key>
<value>
<tuple>
<string>Assignee</string>
<string>Auditor</string>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>ERP5Site_createTestUserList</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
# PreferenceTool
from DateTime import DateTime
portal = context.getPortalObject()
preference = portal.portal_preferences.getActiveSystemPreference()
preference.edit(
preferred_credential_alarm_automatic_call=1,
preferred_credential_recovery_automatic_approval=1,
preferred_credential_request_automatic_approval=1
)
try:
kvm_product = context.software_product_module["kvm"]
except KeyError:
kvm_product = context.software_product_module.newContent(
id="kvm",
title="KVM",
product_line ="software/application",
reference="kvm",
portal_type="Software Product"
)
if kvm_product.getValidationState() == "draft":
kvm_product.publish()
try:
kvm_software_release = context.software_release_module["kvm"]
except KeyError:
kvm_software_release = context.software_release_module.newContent(
id="kvm",
title="KVM",
portal_type="Software Release",
url_string="https://lab.node.vifib.com/nexedi/slapos/raw/1.0.102/software/kvm/software.cfg",
version="0.1",
language="en",
effective_date=DateTime('2018/03/14 00:00:00 UTC'),
aggregate="software_product_module/kvm"
)
if kvm_software_release.getValidationState() == "draft":
kvm_software_release.publishAlive()
try:
slaprunner_product = context.software_product_module["slaprunner"]
except KeyError:
slaprunner_product = context.software_product_module.newContent(
id="slaprunner",
title="Webrunner",
product_line ="software/application",
reference="slaprunner",
portal_type="Software Product"
)
if slaprunner_product.getValidationState() == "draft":
slaprunner_product.publish()
try:
slaprunner_software_release = context.software_release_module["slaprunner"]
except KeyError:
slaprunner_software_release = context.software_release_module.newContent(
id="slaprunner",
title="Webrunner",
portal_type="Software Release",
url_string="https://lab.node.vifib.com/nexedi/slapos/raw/1.0.102/software/slaprunner/software.cfg",
version="0.1",
language="en",
effective_date=DateTime('2018/03/14 00:00:00 UTC'),
aggregate="software_product_module/slaprunner"
)
if slaprunner_software_release.getValidationState() == "draft":
slaprunner_software_release.publishAlive()
return "Done."
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="PythonScript" module="Products.PythonScripts.PythonScript"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>Script_magic</string> </key>
<value> <int>3</int> </value>
</item>
<item>
<key> <string>_bind_names</string> </key>
<value>
<object>
<klass>
<global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
</klass>
<tuple/>
<state>
<dictionary>
<item>
<key> <string>_asgns</string> </key>
<value>
<dictionary>
<item>
<key> <string>name_container</string> </key>
<value> <string>container</string> </value>
</item>
<item>
<key> <string>name_context</string> </key>
<value> <string>context</string> </value>
</item>
<item>
<key> <string>name_m_self</string> </key>
<value> <string>script</string> </value>
</item>
<item>
<key> <string>name_subpath</string> </key>
<value> <string>traverse_subpath</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key> <string>_params</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>_proxy_roles</string> </key>
<value>
<tuple>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>ERP5Site_initSlapOSUITest</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
portal = context.getPortalObject()
for cr in portal.portal_catalog(reference=["testSlapOSJSSubscribeUser", "demo_functional_user", "another_demo_functional_user"],
portal_type="Credential Request"):
related_person = cr.getDestinationDecisionValue()
if related_person is not None:
portal.person_module.manage_delObjects(ids=[related_person.getId()])
event_list = cr.getFollowUpRelatedValueList()
if len(event_list):
portal.event_module.manage_delObjects(ids=[e.getId() for e in event_list])
portal.credential_request_module.manage_delObjects(ids=[cr.getId()])
return "Done."
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="PythonScript" module="Products.PythonScripts.PythonScript"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>Script_magic</string> </key>
<value> <int>3</int> </value>
</item>
<item>
<key> <string>_bind_names</string> </key>
<value>
<object>
<klass>
<global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
</klass>
<tuple/>
<state>
<dictionary>
<item>
<key> <string>_asgns</string> </key>
<value>
<dictionary>
<item>
<key> <string>name_container</string> </key>
<value> <string>container</string> </value>
</item>
<item>
<key> <string>name_context</string> </key>
<value> <string>context</string> </value>
</item>
<item>
<key> <string>name_m_self</string> </key>
<value> <string>script</string> </value>
</item>
<item>
<key> <string>name_subpath</string> </key>
<value> <string>traverse_subpath</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key> <string>_params</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>_proxy_roles</string> </key>
<value>
<tuple>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>ERP5Site_removeTestUserList</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<tal:block xmlns:tal="http://xml.zope.org/namespaces/tal"
xmlns:metal="http://xml.zope.org/namespaces/metal">
<tal:block xmlns:tal="http://xml.zope.org/namespaces/tal" xmlns:metal="http://xml.zope.org/namespaces/metal">
<tal:block metal:define-macro="slapos_init">
......@@ -25,14 +24,8 @@
<tal:block metal:define-macro="slapos_wait_for_activities_and_front_page">
<tal:block tal:define="web_site_id python: 'hostingjs'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page_base" />
</tal:block>
</tal:block>
<tal:block metal:define-macro="access_menu_item">
<tal:block tal:define="panel_gadget_id python: 'gadget_slapos_panel.html'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_base" />
<tal:block
metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/slapos_wait_for_activities_and_front_page_base" />
</tal:block>
</tal:block>
......@@ -48,13 +41,8 @@
</tal:block>
</tal:block>
<tal:block metal:define-macro="slapos_init_base">
<tal:block metal:use-macro="here/Zuite_CommonTemplate/macros/init" />
<tal:block metal:use-macro="here/Zuite_CommonTemplate/macros/wait_for_activities" />
<tr>
......@@ -101,7 +89,8 @@
</tr>
<tr>
<td>open</td>
<td tal:content="python:'${base_url}/web_site_module/%s/ERP5Site_createTestUserList' % web_site_id">.../ERP5Site_createTestUserList</td>
<td tal:content="python:'${base_url}/web_site_module/%s/ERP5Site_createTestUserList' % web_site_id">
.../ERP5Site_createTestUserList</td>
<td></td>
</tr>
<tr>
......@@ -158,7 +147,7 @@
<td>//input[@value="登录"]</td>
<td></td>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_app_loaded" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_app_loaded" />
</tal:block>
......@@ -200,7 +189,7 @@
<td>//input[@value="登录"]</td>
<td></td>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_app_loaded" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_app_loaded" />
</tal:block>
......@@ -233,7 +222,8 @@
</tr>
<tr>
<td>waitForElementNotPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_field_listbox.html')]//h1//span[contains(@class, "ui-icon-spinner")]</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_field_listbox.html')]//h1//span[contains(@class,
"ui-icon-spinner")]</td>
<td></td>
</tr>
......@@ -287,44 +277,6 @@
</tr>
</tal:block>
<tal:block metal:define-macro="access_menu_item_base">
<tr>
<td colspan="3"><b tal:content="python: 'Access Entry on the Menu for : %s' % menu_item"> Menu Item </b></td>
</tr>
<tr>
<td>click</td>
<td>//button[@data-i18n='Menu']</td>
<td></td>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//button[@data-i18n='Menu']</td>
<td></td>
</tr>
<tr>
<td>click</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'%s\')]//a[@data-i18n=\'%s\']' % (panel_gadget_id, menu_item)"></td>
<td></td>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_content_loaded" />
<tr>
<td>assertElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_item"></td>
<td></td>
</tr>
<tr>
<td>waitForElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_erp5_field_listbox.html\')]//h1[contains(text(), \'%s\')]' % menu_item"></td>
<td></td>
</tr>
<tr>
<td>assertElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_erp5_field_listbox.html\')]//h1[contains(text(), \'%s\')]' % menu_item"></td>
<td></td>
</tr>
</tal:block>
<tal:block metal:define-macro="access_menu_item_base_zh">
<tr>
<td colspan="3"><b tal:content="python: 'Access Entry on the Menu for : %s' % menu_item"> Menu Item </b></td>
......@@ -341,55 +293,36 @@
</tr>
<tr>
<td>click</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'%s\')]//a[@data-i18n=\'%s\']' % (panel_gadget_id, menu_item_data)"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'%s\')]//a[@data-i18n=\'%s\']' % (panel_gadget_id, menu_item_data)">
</td>
<td></td>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_content_loaded" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_content_loaded" />
<tr>
<td>assertElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_item"></td>
<td></td>
</tr>
<tr>
<td>waitForElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_erp5_field_listbox.html\')]//h1[contains(text(), \'%s\')]' % menu_item"></td>
<td></td>
</tr>
<tr>
<td>assertElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_erp5_field_listbox.html\')]//h1[contains(text(), \'%s\')]' % menu_item"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_item">
</td>
<td></td>
</tr>
</tal:block>
<tal:block metal:define-macro="assert_page_header">
<tr>
<td>waitForElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % header"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_erp5_field_listbox.html\')]//h1[contains(text(), \'%s\')]' % menu_item">
</td>
<td></td>
</tr>
<tr>
<td>assertElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % header"></td>
<td></td>
</tr>
</tal:block>
<tal:block metal:define-macro="click_page_header">
<tr>
<td>waitForElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % header"></td>
<td></td>
</tr>
<tr>
<td>click</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % header"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_erp5_field_listbox.html\')]//h1[contains(text(), \'%s\')]' % menu_item">
</td>
<td></td>
</tr>
</tal:block>
<tal:block metal:define-macro="access_menu_item_account_base">
<tr>
<td colspan="3"><b tal:content="python: 'Access Entry on the Menu for Account'"> Menu Item </b></td>
......@@ -406,320 +339,53 @@
</tr>
<tr>
<td>click</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'%s\')]//a[contains(text(), \'登录账号\')]' % panel_gadget_id"></td>
<td></td>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_content_loaded" />
<tr>
<td>assertElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'您的登录账号 : %s\']' % person_name"></td>
<td></td>
</tr>
<tr>
<td>waitForElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_erp5_field_listbox.html\')]//h1[contains(text(), \'登录账号\')]'"></td>
<td></td>
</tr>
<tr>
<td>assertElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_erp5_field_listbox.html\')]//h1[contains(text(), \'登录账号\')]'"></td>
<td></td>
</tr>
</tal:block>
<tal:block metal:define-macro="add_simple_with_title">
<tr>
<td colspan="3"><b tal:content="python: 'Add an entry with title as %s' % title"> Menu Item </b></td>
</tr>
<tal:block tal:define="menu_action python: 'Add'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tr>
<td>waitForElementPresent</td>
<td>//input[@id="title"]</td>
<td></td>
</tr>
<tr>
<td>type</td>
<td>//input[@id="title"]</td>
<td tal:content="title"></td>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
</tal:block>
<tal:block metal:define-macro="click_submenu_action">
<tr>
<td colspan="3"><b tal:content="python: 'Click on %s' % menu_action"> Menu Item </b></td>
</tr>
<tr>
<td>waitForElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action"></td>
<td></td>
</tr>
<tr>
<td>assertElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action"></td>
<td></td>
</tr>
<tr>
<td>click</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % menu_action"></td>
<td></td>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_content_loaded" />
</tal:block>
<tal:block metal:define-macro="click_proceed">
<tr>
<td colspan="3"><b>Click on Proceed</b></td>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_slapos_header.html')]//button[@data-i18n='Proceed']</td>
<td></td>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_slapos_header.html')]//button[@data-i18n='Proceed']</td>
<td></td>
</tr>
<tr>
<td>waitForElementNotPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_slapos_header.html')]//button[@data-i18n='Proceed'][contains(@class, "ui-disabled")]</td>
<td></td>
</tr>
<tr>
<td>assertElementNotPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_slapos_header.html')]//button[@data-i18n='Proceed'][contains(@class, "ui-disabled")]</td>
<td></td>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_slapos_header.html')]//button[@data-i18n='Proceed']</td>
<td></td>
</tr>
<tr>
<td>click</td>
<td>//div[contains(@data-gadget-url, 'gadget_slapos_header.html')]//button[@data-i18n="Proceed"]</td>
<td></td>
</tr>
</tal:block>
<tal:block metal:define-macro="delete_simple">
<tr>
<td colspan="3"><b tal:content="python: 'Delete an entry with header %(header_title)s and notification as %(notification_text)s' % delete_configuration"> Menu Item </b></td>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_slapos_header.html')]//a[@data-i18n="Delete"]</td>
<td></td>
</tr>
<tr>
<td>click</td>
<td>//div[contains(@data-gadget-url, 'gadget_slapos_header.html')]//a[@data-i18n="Delete"]</td>
<td></td>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_content_loaded" />
<tr>
<td>waitForElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % delete_configuration['header_title']"></td>
<td></td>
</tr>
<tr>
<td>assertElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'%s\']' % delete_configuration['header_title']"></td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'%s\')]//a[contains(text(), \'登录账号\')]' % panel_gadget_id">
</td>
<td></td>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_slapos_header.html')]//button[@data-i18n="Proceed"]</td>
<td></td>
</tr>
<tr>
<td>click</td>
<td>//div[contains(@data-gadget-url, 'gadget_slapos_header.html')]//button[@data-i18n="Proceed"]</td>
<td></td>
</tr>
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': delete_configuration['notification_text']}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
</tal:block>
</tal:block>
<tal:block metal:define-macro="wait_for_content_loaded">
<!-- Macro copied from renderjs tests but with gadget_slapos_header -->
<tr>
<td colspan="3"><b>Wait for the content to be loaded</b></td>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_slapos_header.html')]//h1//*[contains(@class, "ui-icon-spinner")]</td>
<td></td>
</tr>
<tr>
<td>waitForElementNotPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_slapos_header.html')]//h1//*[contains(@class, "ui-icon-spinner")]</td>
<td></td>
</tr>
<tr>
<td colspan="3"><p></p></td>
</tr>
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_content_loaded" />
<tal:block metal:define-macro="wait_for_app_loaded">
<!-- Macro copied from renderjs tests, which is bad but it can be dropped later -->
<tr>
<td colspan="3"><b>Wait for the application to be loaded</b></td>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[@class="ui-icon-spinner ui-btn-icon-notext first-loader"]</td>
<td></td>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[@class="ui-icon-spinner ui-btn-icon-notext first-loader"]</td>
<td></td>
</tr>
<tr>
<td>waitForElementNotPresent</td>
<td>//div[@class="ui-icon-spinner ui-btn-icon-notext first-loader"]</td>
<td></td>
</tr>
<tr>
<td>assertElementNotPresent</td>
<td>//div[@class="ui-icon-spinner ui-btn-icon-notext first-loader"]</td>
<td></td>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[@data-gadget-scope='header' and not(@data-gadget-async-url)]</td>
<td></td>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[@data-gadget-scope='header' and not(@data-gadget-async-url)]</td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_slapos_header.html\')]//a[@data-i18n=\'您的登录账号 : %s\']' % person_name">
</td>
<td></td>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[@data-gadget-scope='panel' and not(@data-gadget-async-url)]</td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_erp5_field_listbox.html\')]//h1[contains(text(), \'登录账号\')]'">
</td>
<td></td>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[@data-gadget-scope='panel' and not(@data-gadget-async-url)]</td>
<td></td>
</tr>
<tr>
<td colspan="3"><p></p></td>
</tr>
</tal:block>
<tal:block metal:define-macro="check_listbox_pagination_text">
<!-- Macro copied from renderjs tests, which is bad but it can be dropped later -->
<tr>
<td colspan="3"><b tal:content="python: 'Check the listbox pagination text: %s' % pagination_configuration"></b></td>
</tr>
<tr>
<td>waitForElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_erp5_field_listbox.html\')]//h1//span[@class=\'listboxloader\' and text()=\'%(header)s\']' % pagination_configuration"></td>
<td></td>
</tr>
<tr>
<td>assertElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_erp5_field_listbox.html\')]//h1//span[@class=\'listboxloader\' and text()=\'%(header)s\']' % pagination_configuration"></td>
<td></td>
</tr>
<tr>
<td>waitForElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_erp5_field_listbox.html\')]//nav//span[@class=\'ui-disabled\' and text()=\'%(footer)s\']' % pagination_configuration"></td>
<td></td>
</tr>
<tr>
<td>assertElementPresent</td>
<td tal:content="python: '//div[contains(@data-gadget-url, \'gadget_erp5_field_listbox.html\')]//nav//span[@class=\'ui-disabled\' and text()=\'%(footer)s\']' % pagination_configuration"></td>
<td></td>
</tr>
<tr>
<td colspan="3"><p></p></td>
</tr>
</tal:block>
<tal:block metal:define-macro="wait_for_notification">
<tr>
<td colspan="3"><b>Wait for the notification message</b></td>
</tr>
<tr>
<td>waitForElementPresent</td>
<td tal:content="python: '//div[@data-gadget-scope=\'notification\' and @class=\'visible\']//button[@class=\'%(class)s\' and text()=\'%(text)s\']' % notification_configuration"></td>
<td></td>
</tr>
<tr>
<td>assertElementPresent</td>
<td tal:content="python: '//div[@data-gadget-scope=\'notification\' and @class=\'visible\']//button[@class=\'%(class)s\' and text()=\'%(text)s\']' % notification_configuration"></td>
<td></td>
</tr>
<tr>
<td colspan="3"><p></p></td>
</tr>
</tal:block>
<tal:block metal:define-macro="click_save">
<!-- Macro copied from renderjs tests, which is bad but it can be dropped later -->
<tr>
<td colspan="3"><b>Click on Save</b></td>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_slapos_header.html')]//button[@data-i18n='Save']</td>
<td></td>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_slapos_header.html')]//button[@data-i18n='Save']</td>
<td></td>
</tr>
<tr>
<td>waitForElementNotPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_slapos_header.html')]//button[@data-i18n='Save'][contains(@class, "ui-disabled")]</td>
<td></td>
</tr>
<tr>
<td>assertElementNotPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_slapos_header.html')]//button[@data-i18n='Save'][contains(@class, "ui-disabled")]</td>
<td></td>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_slapos_header.html')]//button[@data-i18n='Save']</td>
<td></td>
</tr>
<tr>
<td>click</td>
<td>//div[contains(@data-gadget-url, 'gadget_slapos_header.html')]//button[@data-i18n='Save']</td>
<td
tal:content="python: '//div[contains(@data-gadget-url, \'gadget_erp5_field_listbox.html\')]//h1[contains(text(), \'登录账号\')]'">
</td>
<td></td>
</tr>
</tal:block>
<tal:block metal:define-macro="save">
<!-- Macro copied from renderjs tests, which is bad but it can be dropped later -->
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_save" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_save" />
<tr>
<td colspan="3"><b>Save</b></td>
</tr>
<!-- First loader while calling Base_edit, we assert it is not present, because response is very fast. -->
<tr>
<td>waitForElementNotPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_slapos_header.html')]//h1//*[contains(@class, "ui-icon-spinner")]</td>
<td>//div[contains(@data-gadget-url, 'gadget_slapos_header.html')]//h1//*[contains(@class, "ui-icon-spinner")]
</td>
<td></td>
</tr>
<tr>
<td>assertElementNotPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_slapos_header.html')]//h1//*[contains(@class, "ui-icon-spinner")]</td>
<td>//div[contains(@data-gadget-url, 'gadget_slapos_header.html')]//h1//*[contains(@class, "ui-icon-spinner")]
</td>
<td></td>
</tr>
<!-- Save Button is disabledn but it is sooo fast that selenium don't arrive on time. -->
......@@ -730,7 +396,7 @@
</tr>
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '数据已更新。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tr>
<td>verifyElementPresent</td>
......@@ -738,98 +404,86 @@
<td></td>
</tr>
<tr>
<td colspan="3"><p></p></td>
<td colspan="3">
<p></p>
</td>
</tr>
</tal:block>
<tal:block metal:define-macro="wait_for_listbox_loaded">
<tr>
<td colspan="3"><b>Wait for the listbox to be loaded</b></td>
</tr>
<tr>
<td>waitForElementNotPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_field_listbox.html')]//h1//span[contains(@class, "ui-icon-spinner")]</td>
<td></td>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_field_listbox.html')]//nav//span[@class="ui-disabled"]</td>
<td></td>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[contains(@data-gadget-url, 'gadget_erp5_field_listbox.html')]//nav//span[@class="ui-disabled"]</td>
<td></td>
</tr>
<tr>
<td colspan="3"><p></p></td>
</tr>
</tal:block>
<tal:block metal:define-macro="create_simple_project">
<tr>
<td colspan="3"><p>Create Simple Project</p></td>
<td colspan="3">
<p>Create Simple Project</p>
</td>
</tr>
<tal:block define="menu_item python: '项目'; header menu_item; menu_item_data python:'Projects'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block define="title python: '%s' % document_title; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/add_simple_with_title" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/add_simple_with_title" />
</tal:block>
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '新的项目已创建。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_content_loaded" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_content_loaded" />
<tal:block define="header python: '项目 : %s' % document_title; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<td colspan="3"><p></p></td>
<td colspan="3">
<p></p>
</td>
</tr>
</tal:block>
<tal:block metal:define-macro="create_simple_network">
<tr>
<td colspan="3"><p>Create Simple Network</p></td>
<td colspan="3">
<p>Create Simple Network</p>
</td>
</tr>
<tal:block define="menu_item python: '网络'; header menu_item; menu_item_data python:'Networks'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/access_menu_item_zh" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block define="title python: '%s' % document_title; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/add_simple_with_title" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/add_simple_with_title" />
</tal:block>
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '已创建新的网络。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_content_loaded" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_content_loaded" />
<tal:block define="header python: 'Computer Network :%s' % document_title; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
<td colspan="3"><p></p></td>
<td colspan="3">
<p></p>
</td>
</tr>
</tal:block>
<tal:block metal:define-macro="create_simple_computer">
<tr>
<td colspan="3"><p>Create Simple Computer</p></td>
<td colspan="3">
<p>Create Simple Computer</p>
</td>
</tr>
<tal:block define="menu_item python: '服务器'; header menu_item; menu_item_data python: 'Servers'">
......@@ -837,15 +491,15 @@
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block define="menu_action python: 'Add'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_submenu_action" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="header python: '新的计算机'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
......@@ -859,11 +513,11 @@
<td tal:content="python: '%s' % document_title">TEST-SLAPOSJS-COMPUTER 0</td>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '新的计算机已创建。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tr>
......@@ -888,7 +542,7 @@
</tr>
<tal:block define="header python: 'Computer: %s' % document_title; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
......@@ -903,19 +557,19 @@
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(1)', 'footer': '1 记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block tal:define="pagination_configuration python: {'header': '(0)', 'footer': '没有记录'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/check_listbox_pagination_text" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/check_listbox_pagination_text" />
</tal:block>
<tal:block define="menu_action python: 'Add Organisation'">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_submenu_action" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_submenu_action" />
</tal:block>
<tal:block define="header python: '新组织'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
......@@ -924,15 +578,15 @@
<td tal:content="python: '%s' % (document_title)">DOCUMENT TITLE</td>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/click_proceed" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/click_proceed" />
<tal:block tal:define="notification_configuration python: {'class': 'success',
'text': '新的组织已创建。'}">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_notification" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_notification" />
</tal:block>
<tal:block define="header python: '组织 : %s' % (document_title); ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
</tal:block>
......@@ -943,7 +597,7 @@
</tr>
<tal:block define="header python: '1/3 选择一个软件'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
......@@ -957,7 +611,7 @@
<td></td>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_listbox_loaded" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_listbox_loaded" />
<tr>
<td>waitForElementPresent</td>
......@@ -978,7 +632,7 @@
</tr>
<tal:block define="header python: '2/3 选择一个发布'; ">
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/assert_page_header" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/assert_page_header" />
</tal:block>
<tr>
......@@ -992,7 +646,7 @@
<td></td>
</tr>
<tal:block metal:use-macro="here/Zuite_SlapOSZHCommonTemplate/macros/wait_for_listbox_loaded" />
<tal:block metal:use-macro="here/Zuite_SlapOSCommonTemplate/macros/wait_for_listbox_loaded" />
<tr>
<td>click</td>
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment