diff options
| author | qsm-odoo <qsm@odoo.com> | 2020-06-30 13:23:29 +0000 |
|---|---|---|
| committer | qsm-odoo <qsm@odoo.com> | 2020-06-30 14:19:17 +0000 |
| commit | 4341a4d79571047bee3ab7560cd6d7fceb1368ad (patch) | |
| tree | d20f53a7a564bd291e8d6a239cf4c2f6dc1f75e1 /addons/web/static/tests/core | |
| parent | 257de793caedd16a1f8fdf0cbbe6b1eeb2d13fba (diff) | |
[IMP] web: better test modal backdrop behaviors
Part of https://github.com/odoo/odoo/pull/49142
task-2229551
Diffstat (limited to 'addons/web/static/tests/core')
| -rw-r--r-- | addons/web/static/tests/core/owl_dialog_tests.js | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/addons/web/static/tests/core/owl_dialog_tests.js b/addons/web/static/tests/core/owl_dialog_tests.js index 60f9e95bf43..3f287a5ada4 100644 --- a/addons/web/static/tests/core/owl_dialog_tests.js +++ b/addons/web/static/tests/core/owl_dialog_tests.js @@ -14,7 +14,7 @@ odoo.define('web.owl_dialog_tests', function (require) { QUnit.module('OwlDialog'); QUnit.test("Rendering of all props", async function (assert) { - assert.expect(26); + assert.expect(33); class SubComponent extends Component { // Handlers @@ -80,15 +80,27 @@ odoo.define('web.owl_dialog_tests', function (require) { // Backdrop (default: 'static') // Static backdrop click should focus first button // => we need to reset that property + dialog.querySelector('.btn-primary').blur(); // Remove the focus explicitely + assert.containsOnce(document.body, '.modal-backdrop'); await testUtils.dom.click(dialog.querySelector('.modal-backdrop')); assert.strictEqual(document.activeElement, dialog.querySelector('.btn-primary'), "Button should be focused when clicking on backdrop"); + assert.verifySteps([]); // Ensure not closed + dialog.querySelector('.btn-primary').blur(); // Remove the focus explicitely await changeProps('backdrop', false); assert.containsNone(document.body, '.modal-backdrop'); + await testUtils.dom.click(dialog.querySelector('.modal')); + assert.notEqual(document.activeElement, dialog.querySelector('.btn-primary'), + "Button should not be focused when clicking on backdrop 'false'"); + assert.verifySteps([]); // Ensure not closed await changeProps('backdrop', true); + assert.containsOnce(document.body, '.modal-backdrop'); await testUtils.dom.click(dialog.querySelector('.modal-backdrop')); + assert.notEqual(document.activeElement, dialog.querySelector('.btn-primary'), + "Button should not be focused when clicking on backdrop 'true'"); + assert.verifySteps(['dialog_closed']); // Dialog class (default: '') await changeProps('contentClass', 'my_dialog_class'); @@ -144,7 +156,7 @@ odoo.define('web.owl_dialog_tests', function (require) { "Subcomponent should match with its given text"); await testUtils.dom.click(dialog.querySelector('.o_subcomponent')); - assert.verifySteps(['dialog_closed', 'button_clicked', 'subcomponent_clicked']); + assert.verifySteps(['button_clicked', 'subcomponent_clicked']); parent.destroy(); }); |
