From 68986f4d7ecdb94fe609889b223a90ff415dfa4d Mon Sep 17 00:00:00 2001 From: BeeMargarida Date: Thu, 15 Apr 2021 15:31:09 +0100 Subject: [PATCH 1/2] fix(dom-event): fix key override in trigger events fix #1824 --- packages/test-utils/src/create-dom-event.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/test-utils/src/create-dom-event.js b/packages/test-utils/src/create-dom-event.js index 7391bfd8e..47632ff1e 100644 --- a/packages/test-utils/src/create-dom-event.js +++ b/packages/test-utils/src/create-dom-event.js @@ -63,7 +63,7 @@ function getOptions(eventParams) { // Any derived options should go here keyCode, code: keyCode, - key + key: key || options.key } } From 85d52bfe2cf3f1f70e87aee6c85b90f30423bce3 Mon Sep 17 00:00:00 2001 From: BeeMargarida Date: Thu, 15 Apr 2021 15:32:17 +0100 Subject: [PATCH 2/2] test(dom-event): test for trigger events with keys --- test/specs/wrapper/trigger.spec.js | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/test/specs/wrapper/trigger.spec.js b/test/specs/wrapper/trigger.spec.js index 43bf77ce0..509c48892 100644 --- a/test/specs/wrapper/trigger.spec.js +++ b/test/specs/wrapper/trigger.spec.js @@ -67,6 +67,21 @@ describeWithShallowAndMount('trigger', mountingMethod => { }) }) + describe('causes keydown handler to fire with the appropriate key when wrapper.trigger("keydown", { key: "k" }) is fired on a Component', async () => { + const keydownHandler = jest.fn() + const wrapper = mountingMethod(ComponentWithEvents, { + propsData: { keydownHandler } + }) + + await wrapper.find('.keydown').trigger('keydown', { key: 'k' }) + + const keyboardEvent = keydownHandler.mock.calls[0][0] + + it('contains the key', () => { + expect(keyboardEvent.key).toEqual('k') + }) + }) + it('causes keydown handler to fire when wrapper.trigger("keydown.enter") is fired on a Component', async () => { const keydownHandler = jest.fn() const wrapper = mountingMethod(ComponentWithEvents, {