summaryrefslogtreecommitdiff
path: root/addons/web/static/tests/core
diff options
context:
space:
mode:
authorqsm-odoo <qsm@odoo.com>2020-06-30 13:23:29 +0000
committerqsm-odoo <qsm@odoo.com>2020-06-30 14:19:17 +0000
commit4341a4d79571047bee3ab7560cd6d7fceb1368ad (patch)
treed20f53a7a564bd291e8d6a239cf4c2f6dc1f75e1 /addons/web/static/tests/core
parent257de793caedd16a1f8fdf0cbbe6b1eeb2d13fba (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.js16
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();
});