From bb24d8a1a72889cf89988000f93c267a1007e1e1 Mon Sep 17 00:00:00 2001 From: Valentin Benozillo <valentin.benozillo@nexedi.com> Date: Fri, 30 Mar 2018 16:04:15 +0000 Subject: [PATCH] [erp5_officejs_ui_test] Add test for Smart Assistant --- .../officejs_ui_smartassistant_zuite.xml | 26 +++ .../testOfficeJSSmartAssistant.xml | 58 +++++ .../testOfficeJSSmartAssistant.zpt | 194 +++++++++++++++++ ...iceJSSmartAssistantErp5Synchronization.xml | 58 +++++ ...iceJSSmartAssistantErp5Synchronization.zpt | 203 ++++++++++++++++++ ...p5.testFunctionalOfficeJSSmartAssistant.py | 47 ++++ ...5.testFunctionalOfficeJSSmartAssistant.xml | 123 +++++++++++ .../bt/template_test_id_list | 1 + 8 files changed, 710 insertions(+) create mode 100644 bt5/erp5_officejs_ui_test/PathTemplateItem/portal_tests/officejs_ui_smartassistant_zuite.xml create mode 100644 bt5/erp5_officejs_ui_test/PathTemplateItem/portal_tests/officejs_ui_smartassistant_zuite/testOfficeJSSmartAssistant.xml create mode 100644 bt5/erp5_officejs_ui_test/PathTemplateItem/portal_tests/officejs_ui_smartassistant_zuite/testOfficeJSSmartAssistant.zpt create mode 100644 bt5/erp5_officejs_ui_test/PathTemplateItem/portal_tests/officejs_ui_smartassistant_zuite/testOfficeJSSmartAssistantErp5Synchronization.xml create mode 100644 bt5/erp5_officejs_ui_test/PathTemplateItem/portal_tests/officejs_ui_smartassistant_zuite/testOfficeJSSmartAssistantErp5Synchronization.zpt create mode 100644 bt5/erp5_officejs_ui_test/TestTemplateItem/portal_components/test.erp5.testFunctionalOfficeJSSmartAssistant.py create mode 100644 bt5/erp5_officejs_ui_test/TestTemplateItem/portal_components/test.erp5.testFunctionalOfficeJSSmartAssistant.xml diff --git a/bt5/erp5_officejs_ui_test/PathTemplateItem/portal_tests/officejs_ui_smartassistant_zuite.xml b/bt5/erp5_officejs_ui_test/PathTemplateItem/portal_tests/officejs_ui_smartassistant_zuite.xml new file mode 100644 index 0000000000..c918ff7a80 --- /dev/null +++ b/bt5/erp5_officejs_ui_test/PathTemplateItem/portal_tests/officejs_ui_smartassistant_zuite.xml @@ -0,0 +1,26 @@ +<?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_smartassistant_zuite</string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string></string> </value> + </item> + </dictionary> + </pickle> + </record> +</ZopeData> diff --git a/bt5/erp5_officejs_ui_test/PathTemplateItem/portal_tests/officejs_ui_smartassistant_zuite/testOfficeJSSmartAssistant.xml b/bt5/erp5_officejs_ui_test/PathTemplateItem/portal_tests/officejs_ui_smartassistant_zuite/testOfficeJSSmartAssistant.xml new file mode 100644 index 0000000000..a5fedb7ef8 --- /dev/null +++ b/bt5/erp5_officejs_ui_test/PathTemplateItem/portal_tests/officejs_ui_smartassistant_zuite/testOfficeJSSmartAssistant.xml @@ -0,0 +1,58 @@ +<?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>testOfficeJSSmartAssistant</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> diff --git a/bt5/erp5_officejs_ui_test/PathTemplateItem/portal_tests/officejs_ui_smartassistant_zuite/testOfficeJSSmartAssistant.zpt b/bt5/erp5_officejs_ui_test/PathTemplateItem/portal_tests/officejs_ui_smartassistant_zuite/testOfficeJSSmartAssistant.zpt new file mode 100644 index 0000000000..0f94bc0b00 --- /dev/null +++ b/bt5/erp5_officejs_ui_test/PathTemplateItem/portal_tests/officejs_ui_smartassistant_zuite/testOfficeJSSmartAssistant.zpt @@ -0,0 +1,194 @@ +<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</title> + <script src="../../web_site_module/officejs_smart_assistant/app/rsvp.js"></script> + <script src="../../web_site_module/officejs_smart_assistant/app/jiodev.js"></script> +</head> +<body> +<table cellpadding="1" cellspacing="1" border="1"> +<thead> +<tr><td rowspan="1" colspan="3">Test OfficeJS UI</td></tr> +</thead><tbody> +<tal:block metal:use-macro="here/Zuite_CommonTemplate/macros/init" /> +<!-- Clean Up --> +<tr> + <td>open</td> + <td>${base_url}/smart_assistant_text_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_smart_assistant?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>//label[@for='upload']</td> + <td></td> +</tr> +<tr> + <td>waitForElementPresent</td> + <td>//label[@for='image']</td> + <td></td> +</tr> +<tr> + <td>waitForElementPresent</td> + <td>//a[contains(@href,'smart_assistant_audio')]</td> + <td></td> +</tr> +<tr> + <td>click</td> + <td>//a[@id='audio']</td> + <td></td> +</tr> +<tr> + <td>waitForElementPresent</td> + <td>//button[text()="We can't access to your microphone"]</td> + <td></td> +</tr> +<tr> + <td>waitForElementPresent</td> + <td>//a[contains(@href,'smart_assistant_text')]</td> + <td></td> +</tr> +<tr> + <td>click</td> + <td>//a[@id='text']</td> + <td></td> +</tr> +<tr> + <td>waitForElementPresent</td> + <td>//button[@data-i18n='Save']</td> + <td></td> +</tr> +<tal:block tal:define="text_content python: 'This is a test too simple'"> + <tal:block metal:use-macro="container/Zuite_CommonTemplateForRenderjsUi/macros/type_ckeditor_text_content"/> +</tal:block> +<tr> + <td>click</td> + <td>//button[@data-i18n='Save']</td> + <td></td> +</tr> +<tr> + <td>waitForElementPresent</td> + <td>//button[text()='Data created']</td> + <td></td> +</tr> +<tr> + <td>waitForElementPresent</td> + <td>//a[contains(@href,'smart_assistant_audio')]</td> + <td></td> +</tr> +<tr> + <td>click</td> + <td>//a[@data-i18n='Document']</td> + <td></td> +</tr> +<tr> + <td>waitForElementPresent</td> + <td>//button[@data-i18n='Filter']</td> + <td></td> +</tr> +<tr> + <td>store</td> + <td tal:content="python: 'This_is_a_test'">Title</td> + <td>title</td> +</tr> +<tr> + <td>waitForElementPresent</td> + <td>link=${title}</td> + <td></td> +</tr> +<tr> + <td>click</td> + <td>link=${title}</td> + <td></td> +</tr> +<tal:block tal:define="text_content python: '<p>This is a test too simple</p>'"> + <tal:block metal:use-macro="container/Zuite_CommonTemplateForRenderjsUi/macros/verify_ckeditor_text_content"/> +</tal:block> \ No newline at end of file diff --git a/bt5/erp5_officejs_ui_test/PathTemplateItem/portal_tests/officejs_ui_smartassistant_zuite/testOfficeJSSmartAssistantErp5Synchronization.xml b/bt5/erp5_officejs_ui_test/PathTemplateItem/portal_tests/officejs_ui_smartassistant_zuite/testOfficeJSSmartAssistantErp5Synchronization.xml new file mode 100644 index 0000000000..5a069419bd --- /dev/null +++ b/bt5/erp5_officejs_ui_test/PathTemplateItem/portal_tests/officejs_ui_smartassistant_zuite/testOfficeJSSmartAssistantErp5Synchronization.xml @@ -0,0 +1,58 @@ +<?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>testOfficeJSSmartAssistantErp5Synchronization</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> diff --git a/bt5/erp5_officejs_ui_test/PathTemplateItem/portal_tests/officejs_ui_smartassistant_zuite/testOfficeJSSmartAssistantErp5Synchronization.zpt b/bt5/erp5_officejs_ui_test/PathTemplateItem/portal_tests/officejs_ui_smartassistant_zuite/testOfficeJSSmartAssistantErp5Synchronization.zpt new file mode 100644 index 0000000000..64033f30ac --- /dev/null +++ b/bt5/erp5_officejs_ui_test/PathTemplateItem/portal_tests/officejs_ui_smartassistant_zuite/testOfficeJSSmartAssistantErp5Synchronization.zpt @@ -0,0 +1,203 @@ +<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</title> +</head> +<body> +<table cellpadding="1" cellspacing="1" border="1"> +<thead> +<tr><td rowspan="1" colspan="3">Test OfficeJS UI</td></tr> +</thead><tbody> +<tal:block metal:use-macro="here/Zuite_CommonTemplate/macros/init" /> +<!-- Clean Up --> +<!-- Initialize --> +<tr> + <td>open</td> + <td>${base_url}/web_site_module/officejs_smart_assistant/</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> + +<!-- Create two documents : audio, text --> +<tr> + <td>waitForElementPresent</td> + <td>//a[contains(@href,'smart_assistant_audio')]</td> + <td></td> +</tr> +<tr> + <td>click</td> + <td>//a[@id='audio']</td> + <td></td> +</tr> +<tr> + <td>waitForElementPresent</td> + <td>//button[text()="We can't access to your microphone"]</td> + <td></td> +</tr> +<tr> + <td>waitForElementPresent</td> + <td>//a[contains(@href,'smart_assistant_text')]</td> + <td></td> +</tr> +<tr> + <td>click</td> + <td>//a[@id='text']</td> + <td></td> +</tr> +<tr> + <td>waitForElementPresent</td> + <td>//button[@data-i18n='Save']</td> + <td></td> +</tr> +<tal:block tal:define="text_content python: 'This is a test too simple'"> + <tal:block metal:use-macro="container/Zuite_CommonTemplateForRenderjsUi/macros/type_ckeditor_text_content"/> +</tal:block> +<tr> + <td>click</td> + <td>//button[@data-i18n='Save']</td> + <td></td> +</tr> +<tr> + <td>waitForElementPresent</td> + <td>//button[text()='Data created']</td> + <td></td> +</tr> +<tr> + <td>waitForElementPresent</td> + <td>//a[@id='audio']</td> + <td></td> +</tr> +<tr> + <td>waitForElementPresent</td> + <td>//a[@data-i18n='Document']</td> + <td></td> +</tr> +<tr> + <td>click</td> + <td>//a[@data-i18n='Document']</td> + <td></td> +</tr> +<tr> + <td>waitForElementPresent</td> + <td>//button[@data-i18n='Filter']</td> + <td></td> +</tr> +<!-- Check in ERP5 --> +<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>store</td> + <td tal:content="python: 'This_is_a_test'">Title</td> + <td>title</td> +</tr> +<tr> + <td>waitForElementPresent</td> + <td>//a[contains(@href,'smart_assistant_audio')]</td> + <td></td> +</tr> +<tr> + <td>open</td> + <td>${base_url}/web_page_module/Zuite_waitForActivities</td> + <td></td> +</tr> +<tr> + <td>assertTextPresent</td> + <td>Done.</td> + <td></td> +</tr> +<tr> + <td>open</td> + <td>${base_url}/smart_assistant_text_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>waitForElementPresent</td> + <td>//div[@class="listbox-container"]</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>waitForElementPresent</td> + <td>//div[@class="listbox-container"]</td> + <td></td> +</tr> +<tr> + <td>assertTextPresent</td> + <td>${title}</td> + <td></td> +</tr> +</tbody></table> +</body> +</html> \ No newline at end of file diff --git a/bt5/erp5_officejs_ui_test/TestTemplateItem/portal_components/test.erp5.testFunctionalOfficeJSSmartAssistant.py b/bt5/erp5_officejs_ui_test/TestTemplateItem/portal_components/test.erp5.testFunctionalOfficeJSSmartAssistant.py new file mode 100644 index 0000000000..262824e642 --- /dev/null +++ b/bt5/erp5_officejs_ui_test/TestTemplateItem/portal_components/test.erp5.testFunctionalOfficeJSSmartAssistant.py @@ -0,0 +1,47 @@ +############################################################################## +# +# 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 TestOfficejSUISmartAssistant(ERP5TypeFunctionalTestCase): + foreground = 0 + run_only = "officejs_ui_smartassistant_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(TestOfficejSUISmartAssistant)) + return suite \ No newline at end of file diff --git a/bt5/erp5_officejs_ui_test/TestTemplateItem/portal_components/test.erp5.testFunctionalOfficeJSSmartAssistant.xml b/bt5/erp5_officejs_ui_test/TestTemplateItem/portal_components/test.erp5.testFunctionalOfficeJSSmartAssistant.xml new file mode 100644 index 0000000000..e049304516 --- /dev/null +++ b/bt5/erp5_officejs_ui_test/TestTemplateItem/portal_components/test.erp5.testFunctionalOfficeJSSmartAssistant.xml @@ -0,0 +1,123 @@ +<?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>testFunctionalOfficeJSSmartAssistant</string> </value> + </item> + <item> + <key> <string>description</string> </key> + <value> + <none/> + </value> + </item> + <item> + <key> <string>id</string> </key> + <value> <string>test.erp5.testFunctionalOfficeJSSmartAssistant</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> diff --git a/bt5/erp5_officejs_ui_test/bt/template_test_id_list b/bt5/erp5_officejs_ui_test/bt/template_test_id_list index 897c1e0a5c..ae34c46fea 100644 --- a/bt5/erp5_officejs_ui_test/bt/template_test_id_list +++ b/bt5/erp5_officejs_ui_test/bt/template_test_id_list @@ -1,3 +1,4 @@ +test.erp5.testFunctionalOfficeJSSmartAssistant test.erp5.testFunctionalOfficeJSTextEditor test.erp5.testFunctionalOfficeJSMediaPlayer test.erp5.testFunctionalOfficeJSCribJS -- 2.30.9