diff options
Diffstat (limited to 'addons/web/static/tests/views/form_tests.js')
| -rw-r--r-- | addons/web/static/tests/views/form_tests.js | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/addons/web/static/tests/views/form_tests.js b/addons/web/static/tests/views/form_tests.js index 77df0909de4..3427244881b 100644 --- a/addons/web/static/tests/views/form_tests.js +++ b/addons/web/static/tests/views/form_tests.js @@ -4472,6 +4472,52 @@ QUnit.module('Views', { form.destroy(); }); + QUnit.test('navigation with tab key selects a value in form view', async function (assert) { + assert.expect(5); + + const form = await createView({ + View: FormView, + model: 'partner', + data: this.data, + arch: ` + <form> + <field name="display_name"/> + <field name="int_field"/> + <field name="qux"/> + <field name="trululu"/> + <field name="date"/> + <field name="datetime"/> + </form>`, + res_id: 1, + viewOptions: { + mode: 'edit', + }, + }); + + await testUtils.dom.click(form.el.querySelector('input[name="display_name"]')); + await testUtils.fields.triggerKeydown(document.activeElement, 'tab'); + assert.strictEqual(document.getSelection().toString(), "10", + "int_field value should be selected"); + + await testUtils.fields.triggerKeydown(document.activeElement, 'tab'); + assert.strictEqual(document.getSelection().toString(), "0.4", + "qux field value should be selected"); + + await testUtils.fields.triggerKeydown(document.activeElement, 'tab'); + assert.strictEqual(document.getSelection().toString(), "aaa", + "trululu field value should be selected"); + + await testUtils.fields.triggerKeydown(document.activeElement, 'tab'); + assert.strictEqual(document.getSelection().toString(), "01/25/2017", + "date field value should be selected"); + + await testUtils.fields.triggerKeydown(document.activeElement, 'tab'); + assert.strictEqual(document.getSelection().toString(), "12/12/2016 10:55:05", + "datetime field value should be selected"); + + form.destroy(); + }); + QUnit.test('clicking on a stat button with a context', async function (assert) { assert.expect(1); |
