<!-- 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>
<td>waitForElementPresent</td>
<td>__ac_name</td>
<td></td>
</tr>
<tr>
<td>type</td>
<td>__ac_name</td>
<td>testSlapOSJSSubscribeUser</td>
</tr>
<tr>
<td>type</td>
<td>__ac_password</td>
<td>testSlapOSJSSubscribeUser</td>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@value="登录"]</td>
<td></td>
</tr>
<tr>
<td>clickAndWait</td>
<td>//input[@value="登录"]</td>
<td></td>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//button[@data-i18n='Menu']</td>
<td></td>
</tr>
<tr>
<td>waitForTextPresent</td>
<td>You are not allowed to access this content</td>
<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>
<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 -->