diff options
| author | Julien Mougenot <jum@odoo.com> | 2020-03-11 09:38:27 +0000 |
|---|---|---|
| committer | Julien Mougenot <jum@odoo.com> | 2020-03-13 11:39:53 +0000 |
| commit | 0a129284e4856b6485c48a194fd86c3ab5c736e7 (patch) | |
| tree | dc0adb0c9528605019af5c915ad2c877f9aa1c57 /addons/web/static/tests/helpers/test_utils.js | |
| parent | 72f1633532a586e1ccee4d2a961d745553b9d8b8 (diff) | |
[IMP] web,*: Enhance test helpers
1. Test utils helpers adapted to properly instantiate the new Owl control panel
2. New file 'test_utils_control_panel' to create a control panel and use helpers
3. New helper: createComponent (creates a generic component, see jsdoc)
4. Use of the new helpers in the current tests (more in sibling commits)
5. Helper 'addMockEnvironment' is now asynchronous
6. Owl config mode set to 'dev' in test suite (props validation)
Part of task 2196029
Co-authored-by: Mathieu Duckerts-Antoine <dam@odoo.com>
Diffstat (limited to 'addons/web/static/tests/helpers/test_utils.js')
| -rw-r--r-- | addons/web/static/tests/helpers/test_utils.js | 53 |
1 files changed, 52 insertions, 1 deletions
diff --git a/addons/web/static/tests/helpers/test_utils.js b/addons/web/static/tests/helpers/test_utils.js index 2ff77de4e49..f462df514a1 100644 --- a/addons/web/static/tests/helpers/test_utils.js +++ b/addons/web/static/tests/helpers/test_utils.js @@ -15,6 +15,7 @@ odoo.define('web.test_utils', async function (require) { const relationalFields = require('web.relational_fields'); const session = require('web.session'); const testUtilsCreate = require('web.test_utils_create'); + const testUtilsControlPanel = require('web.test_utils_control_panel'); const testUtilsDom = require('web.test_utils_dom'); const testUtilsFields = require('web.test_utils_fields'); const testUtilsFile = require('web.test_utils_file'); @@ -128,11 +129,60 @@ odoo.define('web.test_utils', async function (require) { fieldsViewGet: testUtilsMock.fieldsViewGet, patchSetTimeout: testUtilsMock.patchSetTimeout, }, + controlPanel: { + // Generic interactions + toggleMenu: testUtilsControlPanel.toggleMenu, + toggleMenuItem: testUtilsControlPanel.toggleMenuItem, + toggleMenuItemOption: testUtilsControlPanel.toggleMenuItemOption, + isItemSelected: testUtilsControlPanel.isItemSelected, + isOptionSelected: testUtilsControlPanel.isOptionSelected, + getMenuItemTexts: testUtilsControlPanel.getMenuItemTexts, + // Button interactions + getButtons: testUtilsControlPanel.getButtons, + // FilterMenu interactions + toggleFilterMenu: testUtilsControlPanel.toggleFilterMenu, + toggleAddCustomFilter: testUtilsControlPanel.toggleAddCustomFilter, + applyFilter: testUtilsControlPanel.applyFilter, + // GroupByMenu interactions + toggleGroupByMenu: testUtilsControlPanel.toggleGroupByMenu, + toggleAddCustomGroup: testUtilsControlPanel.toggleAddCustomGroup, + selectGroup: testUtilsControlPanel.selectGroup, + applyGroup: testUtilsControlPanel.applyGroup, + // FavoriteMenu interactions + toggleFavoriteMenu: testUtilsControlPanel.toggleFavoriteMenu, + toggleSaveFavorite: testUtilsControlPanel.toggleSaveFavorite, + editFavoriteName: testUtilsControlPanel.editFavoriteName, + saveFavorite: testUtilsControlPanel.saveFavorite, + deleteFavorite: testUtilsControlPanel.deleteFavorite, + // TimeRangeMenu interactions + toggleTimeRangeMenu: testUtilsControlPanel.toggleTimeRangeMenu, + selectField: testUtilsControlPanel.selectField, + selectRange: testUtilsControlPanel.selectRange, + selectComparisonRange: testUtilsControlPanel.selectComparisonRange, + toggleTimeRangeMenuBox: testUtilsControlPanel.toggleTimeRangeMenuBox, + applyTimeRange: testUtilsControlPanel.applyTimeRange, + // SearchBar interactions + getFacetTexts: testUtilsControlPanel.getFacetTexts, + removeFacet: testUtilsControlPanel.removeFacet, + editSearch: testUtilsControlPanel.editSearch, + validateSearch: testUtilsControlPanel.validateSearch, + // Action menus interactions + toggleActionMenu: testUtilsControlPanel.toggleActionMenu, + // Pager interactions + pagerPrevious: testUtilsControlPanel.pagerPrevious, + pagerNext: testUtilsControlPanel.pagerNext, + getPagerValue: testUtilsControlPanel.getPagerValue, + getPagerSize: testUtilsControlPanel.getPagerSize, + setPagerValue: testUtilsControlPanel.setPagerValue, + // View switcher + switchView: testUtilsControlPanel.switchView, + }, dom: { triggerKeypressEvent: testUtilsDom.triggerKeypressEvent, triggerMouseEvent: testUtilsDom.triggerMouseEvent, triggerPositionalMouseEvent: testUtilsDom.triggerPositionalMouseEvent, dragAndDrop: testUtilsDom.dragAndDrop, + getNode: testUtilsDom.getNode, openDatepicker: testUtilsDom.openDatepicker, click: testUtilsDom.click, clickFirst: testUtilsDom.clickFirst, @@ -187,10 +237,11 @@ odoo.define('web.test_utils', async function (require) { }, createActionManager: testUtilsCreate.createActionManager, + createComponent: testUtilsCreate.createComponent, + createControlPanel: testUtilsCreate.createControlPanel, createDebugManager: testUtilsCreate.createDebugManager, createAsyncView: testUtilsCreate.createView, createCalendarView: testUtilsCreate.createCalendarView, - createControlPanel: testUtilsCreate.createControlPanel, createView: testUtilsCreate.createView, createModel: testUtilsCreate.createModel, createParent: testUtilsCreate.createParent, |
