Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
erp5
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Alexander Emmerich
erp5
Commits
bbbfc494
Commit
bbbfc494
authored
May 02, 2018
by
Laurent S
Committed by
Vincent Bechu
Aug 23, 2018
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[erp5_officejs_ui_test] : Adds tests for the notebook
parent
c5894b08
Changes
8
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
969 additions
and
1 deletion
+969
-1
bt5/erp5_officejs_ui_test/PathTemplateItem/portal_tests/officejs_ui_notebook_zuite.xml
...hTemplateItem/portal_tests/officejs_ui_notebook_zuite.xml
+26
-0
bt5/erp5_officejs_ui_test/PathTemplateItem/portal_tests/officejs_ui_notebook_zuite/testOfficeJSNotebook.xml
...tests/officejs_ui_notebook_zuite/testOfficeJSNotebook.xml
+58
-0
bt5/erp5_officejs_ui_test/PathTemplateItem/portal_tests/officejs_ui_notebook_zuite/testOfficeJSNotebook.zpt
...tests/officejs_ui_notebook_zuite/testOfficeJSNotebook.zpt
+246
-0
bt5/erp5_officejs_ui_test/PathTemplateItem/portal_tests/officejs_ui_notebook_zuite/testOfficeJSNotebookErp5Synchronization.xml
...otebook_zuite/testOfficeJSNotebookErp5Synchronization.xml
+58
-0
bt5/erp5_officejs_ui_test/PathTemplateItem/portal_tests/officejs_ui_notebook_zuite/testOfficeJSNotebookErp5Synchronization.zpt
...otebook_zuite/testOfficeJSNotebookErp5Synchronization.zpt
+409
-0
bt5/erp5_officejs_ui_test/TestTemplateItem/portal_components/test.erp5.testFunctionalOfficeJSNotebook.py
...al_components/test.erp5.testFunctionalOfficeJSNotebook.py
+47
-0
bt5/erp5_officejs_ui_test/TestTemplateItem/portal_components/test.erp5.testFunctionalOfficeJSNotebook.xml
...l_components/test.erp5.testFunctionalOfficeJSNotebook.xml
+123
-0
bt5/erp5_officejs_ui_test/bt/template_test_id_list
bt5/erp5_officejs_ui_test/bt/template_test_id_list
+2
-1
No files found.
bt5/erp5_officejs_ui_test/PathTemplateItem/portal_tests/officejs_ui_notebook_zuite.xml
0 → 100644
View file @
bbbfc494
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"Zuite"
module=
"Products.Zelenium.zuite"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_objects
</string>
</key>
<value>
<tuple/>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
officejs_ui_notebook_zuite
</string>
</value>
</item>
<item>
<key>
<string>
title
</string>
</key>
<value>
<string></string>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
bt5/erp5_officejs_ui_test/PathTemplateItem/portal_tests/officejs_ui_notebook_zuite/testOfficeJSNotebook.xml
0 → 100644
View file @
bbbfc494
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"ZopePageTemplate"
module=
"Products.PageTemplates.ZopePageTemplate"
/>
</pickle>
<pickle>
<dictionary>
<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_subpath
</string>
</key>
<value>
<string>
traverse_subpath
</string>
</value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key>
<string>
content_type
</string>
</key>
<value>
<string>
text/html
</string>
</value>
</item>
<item>
<key>
<string>
expand
</string>
</key>
<value>
<int>
0
</int>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
testOfficeJSNotebook
</string>
</value>
</item>
<item>
<key>
<string>
output_encoding
</string>
</key>
<value>
<string>
utf-8
</string>
</value>
</item>
<item>
<key>
<string>
title
</string>
</key>
<value>
<unicode></unicode>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
bt5/erp5_officejs_ui_test/PathTemplateItem/portal_tests/officejs_ui_notebook_zuite/testOfficeJSNotebook.zpt
0 → 100644
View file @
bbbfc494
<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 OfficeJS UI (expected failure)
</title>
<script
src=
"../../web_site_module/officejs_notebook/rsvp.js"
></script>
<script
src=
"../../web_site_module/officejs_notebook/jiodev.js"
></script>
</head>
<body>
<table
cellpadding=
"1"
cellspacing=
"1"
border=
"1"
>
<thead>
<tr><td
rowspan=
"1"
colspan=
"3"
>
Test OfficeJS UI (expected failure)
</td></tr>
</thead><tbody>
<tal:block
metal:use-macro=
"here/Zuite_CommonTemplate/macros/init"
/>
<!-- Clean Up -->
<tr>
<td>
open
</td>
<td>
${base_url}/bar_module/ListBoxZuite_reset
</td>
<td></td>
</tr>
<tr>
<td>
assertTextPresent
</td>
<td>
Reset Successfully.
</td>
<td></td>
</tr>
<!-- Initialize -->
<tr>
<td>
open
</td>
<td>
${base_url}/web_site_module/officejs_notebook?ignore_layout:int=1
&
editable_mode:int=1
</td>
<td></td>
</tr>
<tr>
<td>
waitForElementPresent
</td>
<td>
name=Base_createCloneDocument:method
</td>
<td></td>
field_my_id
</tr>
<tr>
<td>
clickAndWait
</td>
<td>
name=Base_createCloneDocument:method
</td>
<td></td>
</tr>
<tr>
<td>
verifyTextPresent
</td>
<td>
Created Clone Web Site
</td>
<td></td>
</tr>
<tr>
<td>
storeValue
</td>
<td>
name=field_my_id
</td>
<td>
test_url
</td>
</tr>
<tal:block
metal:use-macro=
"here/Zuite_CommonTemplate/macros/wait_for_activities"
/>
<tr>
<td>
open
</td>
<td>
${base_url}/web_site_module/${test_url}/
</td>
<td></td>
</tr>
<tr>
<td>
waitForElementPresent
</td>
<td>
//a[@data-i18n='Storages']
</td>
<td></td>
</tr>
<tr>
<td>
open
</td>
<td>
${base_url}/web_site_module/manage_main
</td>
<td></td>
</tr>
<tr>
<td>
waitForElementPresent
</td>
<td>
name=ids:list
</td>
<td></td>
</tr>
<tr>
<td>
type
</td>
<td>
name=ids:list
</td>
<td>
${test_url}
</td>
</tr>
<tr>
<td>
clickAndWait
</td>
<td>
name=manage_delObjects:method
</td>
<td></td>
</tr>
<!-- Offline Test -->
<tr>
<td>
open
</td>
<td>
${base_url}/web_site_module/${test_url}/
</td>
<td></td>
</tr>
<tr>
<td>
waitForElementPresent
</td>
<td>
//a[@data-i18n='Storages']
</td>
<td></td>
</tr>
<tr>
<td>
click
</td>
<td>
//a[@data-i18n='Storages']
</td>
<td></td>
</tr>
<tr>
<td>
waitForElementPresent
</td>
<td>
link=Local is Enough
</td>
<td></td>
</tr>
<tr>
<td>
click
</td>
<td>
link=Local is Enough
</td>
<td></td>
</tr>
<tr>
<td>
waitForElementPresent
</td>
<td>
link=Add
</td>
<td></td>
</tr>
<tr>
<td>
click
</td>
<td>
link=Add
</td>
<td></td>
</tr>
<tr>
<td>
waitForElementPresent
</td>
<td>
//button[@data-i18n='Save']
</td>
<td></td>
</tr>
<tr>
<td>
store
</td>
<td
tal:content=
"python: 'Test Titre %s' % DateTime()"
>
Titre
</td>
<td>
title
</td>
</tr>
<tr>
<td>
store
</td>
<td
tal:content=
"python: 'Test Reference %s' % DateTime()"
>
Reference
</td>
<td>
reference
</td>
</tr>
<tr>
<td>
store
</td>
<td
tal:content=
"python: 'Test Language %s' % DateTime()"
>
Language
</td>
<td>
language
</td>
</tr>
<tr>
<td>
store
</td>
<td
tal:content=
"python: 'Test Version %s' % DateTime()"
>
Version
</td>
<td>
version
</td>
</tr>
<tr>
<td>
store
</td>
<td
tal:content=
"python: 'Test Description %s' % DateTime()"
>
Description
</td>
<td>
description
</td>
</tr>
<tr>
<td>
waitForElementPresent
</td>
<td>
//input[@title='Title']
</td>
<td></td>
</tr>
<tr>
<td>
type
</td>
<td>
//input[@title='Title']
</td>
<td>
${title}
</td>
</tr>
<tr>
<td>
type
</td>
<td>
//input[@title='Reference']
</td>
<td>
${reference}
</td>
</tr>
<tr>
<td>
type
</td>
<td>
//input[@title='Version']
</td>
<td>
${version}
</td>
</tr>
<tr>
<td>
type
</td>
<td>
//input[@title='Language']
</td>
<td>
${language}
</td>
</tr>
<tr>
<td>
type
</td>
<td>
//textarea[@title='Description']
</td>
<td>
${description}
</td>
</tr>
<tr>
<td>
click
</td>
<td>
//button[@data-i18n='Save']
</td>
<td></td>
</tr>
<tr>
<td>
waitForElementPresent
</td>
<td>
//div[@data-gadget-scope="notification"]//button[text()='Data Updated']
</td>
<td></td>
</tr>
<tr>
<td>
click
</td>
<td>
//a[@data-i18n='Document']
</td>
<td></td>
</tr>
<tr>
<td>
waitForElementPresent
</td>
<td>
link=Add
</td>
<td></td>
</tr>
<tr>
<td>
waitForElementPresent
</td>
<td>
link=${title}
</td>
<td></td>
</tr>
<tr>
<td>
click
</td>
<td>
link=${title}
</td>
<td></td>
</tr>
<tr>
<td>
waitForElementPresent
</td>
<td>
//textarea[@title='Description']
</td>
<td></td>
</tr>
<tr>
<td>
verifyValue
</td>
<td>
//input[@title='Title']
</td>
<td>
${title}
</td>
</tr>
<tr>
<td>
verifyValue
</td>
<td>
//input[@title='Reference']
</td>
<td>
${reference}
</td>
</tr>
<tr>
<td>
verifyValue
</td>
<td>
//input[@title='Version']
</td>
<td>
${version}
</td>
</tr>
<tr>
<td>
verifyValue
</td>
<td>
//input[@title='Language']
</td>
<td>
${language}
</td>
</tr>
<tr>
<td>
verifyValue
</td>
<td>
//textarea[@title='Description']
</td>
<td>
${description}
</td>
</tr>
<!-- This part (actually loading the notebook) requires a recent version
of firefox. Right now (may 2018) the test nodes are running with firefox 51.
This has been successfully tested with 59. -->
<tr>
<td>
waitForElementPresent
</td>
<td>
identifier=notebook-container
</td>
<td></td>
</tr>
bt5/erp5_officejs_ui_test/PathTemplateItem/portal_tests/officejs_ui_notebook_zuite/testOfficeJSNotebookErp5Synchronization.xml
0 → 100644
View file @
bbbfc494
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"ZopePageTemplate"
module=
"Products.PageTemplates.ZopePageTemplate"
/>
</pickle>
<pickle>
<dictionary>
<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_subpath
</string>
</key>
<value>
<string>
traverse_subpath
</string>
</value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key>
<string>
content_type
</string>
</key>
<value>
<string>
text/html
</string>
</value>
</item>
<item>
<key>
<string>
expand
</string>
</key>
<value>
<int>
0
</int>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
testOfficeJSNotebookErp5Synchronization
</string>
</value>
</item>
<item>
<key>
<string>
output_encoding
</string>
</key>
<value>
<string>
utf-8
</string>
</value>
</item>
<item>
<key>
<string>
title
</string>
</key>
<value>
<unicode></unicode>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
bt5/erp5_officejs_ui_test/PathTemplateItem/portal_tests/officejs_ui_notebook_zuite/testOfficeJSNotebookErp5Synchronization.zpt
0 → 100644
View file @
bbbfc494
<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 OfficeJS UI (expected failure)
</title>
</head>
<body>
<table
cellpadding=
"1"
cellspacing=
"1"
border=
"1"
>
<thead>
<tr><td
rowspan=
"1"
colspan=
"3"
>
Test OfficeJS UI (expected failure)
</td></tr>
</thead><tbody>
<tal:block
metal:use-macro=
"here/Zuite_CommonTemplate/macros/init"
/>
<!-- Clean Up -->
<tr>
<td>
open
</td>
<td>
${base_url}/bar_module/ListBoxZuite_reset
</td>
<td></td>
</tr>
<tr>
<td>
assertTextPresent
</td>
<td>
Reset Successfully.
</td>
<td></td>
</tr>
<!-- Initialize -->
<tr>
<td>
open
</td>
<td>
${base_url}/web_site_module/officejs_notebook/
</td>
<td></td>
</tr>
<tr>
<td>
waitForElementPresent
</td>
<td>
link=Storages
</td>
<td></td>
</tr>
<tr>
<td>
click
</td>
<td>
link=Storages
</td>
<td></td>
</tr>
<tr>
<td>
waitForElementPresent
</td>
<td>
link=Erp5
</td>
<td></td>
</tr>
<tr>
<td>
click
</td>
<td>
link=Erp5
</td>
<td></td>
</tr>
<tr>
<td>
waitForElementPresent
</td>
<td>
name=erp5_url
</td>
<td></td>
</tr>
<tr>
<td>
type
</td>
<td>
name=erp5_url
</td>
<td>
${base_url}/web_site_module/
</td>
</tr>
<tr>
<td>
click
</td>
<td>
//button[@data-i18n='Proceed']
</td>
<td></td>
</tr>
<tr>
<td>
waitForElementPresent
</td>
<td>
link=Add
</td>
<td></td>
</tr>
<tr>
<td>
click
</td>
<td>
link=Add
</td>
<td></td>
</tr>
<tr>
<td>
waitForElementPresent
</td>
<td>
//button[@data-i18n='Save']
</td>
<td></td>
</tr>
<tr>
<td>
waitForElementPresent
</td>
<td>
identifier=title
</td>
<td></td>
</tr>
<!-- This part (actually loading the notebook) requires a recent version
of firefox. Right now (may 2018) the test nodes are running with firefox 51.
This has been successfully tested with 59. -->
<tr>
<td>
waitForElementPresent
</td>
<td>
identifier=notebook-container
</td>
<td></td>
</tr>
<tr>
<td>
store
</td>
<td>
Titre
</td>
<td>
title
</td>
</tr>
<tr>
<td>
store
</td>
<td
tal:content=
"python: ('Test Reference %s' % DateTime()).replace(' ','.').replace(':', '.').replace('/', '.')"
>
Reference
</td>
<td>
reference
</td>
</tr>
<tr>
<td>
store
</td>
<td
tal:content=
"python: 'Test Description %s' % DateTime()"
>
Today
</td>
<td>
description
</td>
</tr>
<tr>
<td>
type
</td>
<td>
name=reference
</td>
<td>
${reference}
</td>
</tr>
<tr>
<td>
type
</td>
<td>
name=title
</td>
<td>
${title}
</td>
</tr>
<tr>
<td>
type
</td>
<td>
identifier=description
</td>
<td>
${description}
</td>
</tr>
<tal:block
tal:define=
"notebook_content python: 'content {}'.format(DateTime())"
>
<tr>
<td>
store
</td>
<td
tal:content=
"python: notebook_content"
>
Notebook content
</td>
<td>
notebook_content
</td>
</tr>
<tr>
<td>
storeEval
</td>
<td
tal:content=
"python: 'document.querySelector(\'#selenium_myiframe\').contentWindow.document.body.querySelector(\'iframe\').contentWindow.document.querySelector(\'.CodeMirror\').CodeMirror.setValue(\'%s\')' % notebook_content"
></td>
<td></td>
</tr>
</tal:block>
<!-- Laurent : for some reason, if you just change the cell content, it will not be saved. You need to send a keyboard input at some point.
For that I'm using this undocumented triggerOnKeyDown() method -->
<tr>
<td>
storeEval
</td>
<td
tal:content=
"python: 'document.querySelector(\'#selenium_myiframe\').contentWindow.document.body.querySelector(\'iframe\').contentWindow.document.querySelector(\'.CodeMirror\').
CodeMirror.triggerOnKeyDown({type: \'keydown\', keyCode: 13})'"
></td>
<td></td>
</tr>
<!-- Laurent : in case the UI of iodide notebooks ever changes, you need to select the "run cell" button here -->
<tr>
<td>
click
</td>
<td>
//*[@class="editor-mode-controls"]/div[5]/button
</td>
<td></td>
</tr>
<tr>
<td>
click
</td>
<td>
//button[@data-i18n='Save']
</td>
<td></td>
</tr>
<tr>
<td>
waitForElementPresent
</td>
<td>
//div[@data-gadget-scope="notification"]//button[text()='Data Updated']
</td>
<td></td>
</tr>
<tr>
<td>
click
</td>
<td>
//a[@data-i18n='Document']
</td>
<td></td>
</tr>
<!-- Verify Search, add another document -->
<tr>
<td>
waitForElementPresent
</td>
<td>
//a[@data-i18n='Add']
</td>
<td></td>
</tr>
<tr>
<td>
click
</td>
<td>
//a[@data-i18n='Add']
</td>
<td></td>
</tr>
<tr>
<td>
waitForElementPresent
</td>
<td>
//button[@data-i18n='Save']
</td>
<td></td>
</tr>
<tr>
<td>
store
</td>
<td>
search
</td>
<td>
search
</td>
</tr>
<tr>
<td>
waitForElementPresent
</td>
<td>
identifier=title
</td>
<td></td>
</tr>
<tr>
<td>
type
</td>
<td>
name=reference
</td>
<td>
${search}
</td>
</tr>
<tr>
<td>
type
</td>
<td>
name=title
</td>
<td>
${search}
</td>
</tr>
<tr>
<td>
click
</td>
<td>
//button[@data-i18n='Save']
</td>
<td></td>
</tr>
<tr>
<td>
click
</td>
<td>
//a[@data-i18n='Document']
</td>
<td></td>
</tr>
<tal:block
tal:define=
"search_query python: 'Titre'"
>
<tal:block
metal:use-macro=
"here/Zuite_CommonTemplateForRenderjsUi/macros/search_in_form_list_without_header_url"
/>
</tal:block>
<tr>
<td>
waitForElementPresent
</td>
<td>
link=${title}
</td>
<td></td>
</tr>
<tr>
<td>
assertTextPresent
</td>
<td>
${reference}
</td>
<td></td>
</tr>
<tr>
<td>
assertFailureOnNext
</td>
<td>
false
</td>
<td></td>
</tr>
<tr>
<td>
verifyElementPresent
</td>
<td>
link=${search}
</td>
<td></td>
</tr>
<tr>
<td>
click
</td>
<td>
link=${reference}
</td>
<td></td>
</tr>
<tr>
<td>
waitForElementPresent
</td>
<td>
identifier=title
</td>
<td></td>
</tr>
<tr>
<td>
assertTextPresent
</td>
<td>
${title}
</td>
<td></td>
</tr>
<tr>
<td>
verifyValue
</td>
<td>
title
</td>
<td>
${title}
</td>
</tr>
<tr>
<td>
verifyValue
</td>
<td>
reference
</td>
<td>
${reference}
</td>
</tr>
<tr>
<td>
waitForElementPresent
</td>
<td>
identifier=description
</td>
<td></td>
</tr>
<tr>
<td>
verifyValue
</td>
<td>
description
</td>
<td>
${description}
</td>
</tr>
<tr>
<td>
click
</td>
<td>
//button[@data-i18n='Menu']
</td>
<td></td>
</tr>
<tr>
<td>
click
</td>
<td>
//a[@data-i18n='Synchronize']
</td>
<td></td>
</tr>
<tr>
<td>
waitForElementPresent
</td>
<td>
name=search
</td>
<td></td>
</tr>
<tr>
<td>
type
</td>
<td>
name=search
</td>
<td>
${title}
</td>
</tr>
<tr>
<td>
waitForElementPresent
</td>
<td>
//button[@data-i18n='Filter']
</td>
<td></td>
</tr>
<tr>
<td>
click
</td>
<td>
//button[@data-i18n='Filter']
</td>
<td></td>
</tr>
<tr>
<td>
waitForElementPresent
</td>
<td>
//button[@data-i18n='Filter']
</td>
<td></td>
</tr>
<tr>
<td>
waitForElementPresent
</td>
<td>
link=${title}
</td>
<td></td>
</tr>
<tr>
<td>
assertTextPresent
</td>
<td>
${reference}
</td>
<td></td>
</tr>
<tr>
<td>
click
</td>
<td>
link=${reference}
</td>
<td></td>
</tr>
<tr>
<td>
waitForElementPresent
</td>
<td>
identifier=title
</td>
<td></td>
</tr>
<tr>
<td>
verifyValue
</td>
<td>
title
</td>
<td>
${title}
</td>
</tr>
<tr>
<td>
verifyValue
</td>
<td>
reference
</td>
<td>
${reference}
</td>
</tr>
<tr>
<td>
verifyValue
</td>
<td>
description
</td>
<td>
${description}
</td>
</tr>
<tr>
<td>
open
</td>
<td>
${base_url}/notebook_module/Zuite_waitForActivities
</td>
<td></td>
</tr>
<tr>
<td>
assertTextPresent
</td>
<td>
Done.
</td>
<td></td>
</tr>
<tr>
<td>
open
</td>
<td>
${base_url}/notebook_module/
</td>
<td></td>
</tr>
<tr>
<td>
waitForElementPresent
</td>
<td>
//button[@title="Show All"]
</td>
<td></td>
</tr>
<tr>
<td>
click
</td>
<td>
//button[@title="Show All"]
</td>
<td></td>
</tr>
<tr>
<td>
pause
</td>
<td>
1000
</td>
<td></td>
</tr>
<tr>
<td>
waitForElementPresent
</td>
<td>
//input[@name="listbox_title"]
</td>
<td></td>
</tr>
<tr>
<td>
type
</td>
<td>
name=listbox_title
</td>
<td>
${title}
</td>
</tr>
<tr>
<td>
clickAndWait
</td>
<td>
Base_doSelect:method
</td>
<td></td>
</tr>
<tr>
<td>
assertTextPresent
</td>
<td>
${title}
</td>
<td></td>
</tr>
<tr>
<td>
assertTextPresent
</td>
<td>
${reference}
</td>
<td></td>
</tr>
<tr>
<td>
assertTextPresent
</td>
<td>
${description}
</td>
<td></td>
</tr>
<tr>
<td>
assertTextPresent
</td>
<td>
${notebook_content}
</td>
<td></td>
</tr>
</tbody></table>
</body>
</html>
bt5/erp5_officejs_ui_test/TestTemplateItem/portal_components/test.erp5.testFunctionalOfficeJSNotebook.py
0 → 100644
View file @
bbbfc494
##############################################################################
#
# Copyright (c) 2011 Nexedi SARL and Contributors. All Rights Reserved.
# Kazuhiko <kazuhiko@nexedi.com>
# Rafael Monnerat <rafael@nexedi.com>
#
# WARNING: This program as such is intended to be used by professional
# programmers who take the whole responsability of assessing all potential
# consequences resulting from its eventual inadequacies and bugs
# End users who are looking for a ready-to-use solution with commercial
# garantees and support are strongly adviced to contract a Free Software
# Service Company
#
# This program is Free Software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
##############################################################################
import
unittest
from
Products.ERP5Type.tests.ERP5TypeFunctionalTestCase
import
ERP5TypeFunctionalTestCase
class
TestOfficejSUINotebook
(
ERP5TypeFunctionalTestCase
):
foreground
=
0
run_only
=
"officejs_ui_notebook_zuite"
def
getBusinessTemplateList
(
self
):
return
(
'erp5_officejs'
,
'erp5_officejs_ui_test'
,
'erp5_ui_test_core'
,
)
def
test_suite
():
suite
=
unittest
.
TestSuite
()
suite
.
addTest
(
unittest
.
makeSuite
(
TestOfficejSUINotebook
))
return
suite
\ No newline at end of file
bt5/erp5_officejs_ui_test/TestTemplateItem/portal_components/test.erp5.testFunctionalOfficeJSNotebook.xml
0 → 100644
View file @
bbbfc494
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"Test Component"
module=
"erp5.portal_type"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_recorded_property_dict
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
default_reference
</string>
</key>
<value>
<string>
testFunctionalOfficeJSNotebook
</string>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
test.erp5.testFunctionalOfficeJSNotebook
</string>
</value>
</item>
<item>
<key>
<string>
portal_type
</string>
</key>
<value>
<string>
Test Component
</string>
</value>
</item>
<item>
<key>
<string>
sid
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
text_content_error_message
</string>
</key>
<value>
<tuple/>
</value>
</item>
<item>
<key>
<string>
text_content_warning_message
</string>
</key>
<value>
<tuple/>
</value>
</item>
<item>
<key>
<string>
version
</string>
</key>
<value>
<string>
erp5
</string>
</value>
</item>
<item>
<key>
<string>
workflow_history
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAM=
</string>
</persistent>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
data
</string>
</key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"3"
aka=
"AAAAAAAAAAM="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
data
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
component_validation_workflow
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAQ=
</string>
</persistent>
</value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"4"
aka=
"AAAAAAAAAAQ="
>
<pickle>
<global
name=
"WorkflowHistoryList"
module=
"Products.ERP5Type.patches.WorkflowTool"
/>
</pickle>
<pickle>
<tuple>
<none/>
<list>
<dictionary>
<item>
<key>
<string>
action
</string>
</key>
<value>
<string>
validate
</string>
</value>
</item>
<item>
<key>
<string>
validation_state
</string>
</key>
<value>
<string>
validated
</string>
</value>
</item>
</dictionary>
</list>
</tuple>
</pickle>
</record>
</ZopeData>
bt5/erp5_officejs_ui_test/bt/template_test_id_list
View file @
bbbfc494
...
@@ -10,4 +10,5 @@ test.erp5.testFunctionalOfficeJSWebTable
...
@@ -10,4 +10,5 @@ test.erp5.testFunctionalOfficeJSWebTable
test.erp5.testFunctionalOfficeJSoOoText
test.erp5.testFunctionalOfficeJSoOoText
test.erp5.testFunctionalOfficeJSoOoSpreadsheet
test.erp5.testFunctionalOfficeJSoOoSpreadsheet
test.erp5.testFunctionalOfficeJSoOoPresentation
test.erp5.testFunctionalOfficeJSoOoPresentation
test.erp5.testFunctionalOfficeJSBookmark
test.erp5.testFunctionalOfficeJSBookmark
\ No newline at end of file
test.erp5.testFunctionalOfficeJSNotebook
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment