Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/twbs/bootstrap.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--js/tests/unit/dropdown.spec.js45
1 files changed, 13 insertions, 32 deletions
diff --git a/js/tests/unit/dropdown.spec.js b/js/tests/unit/dropdown.spec.js
index 9c0eae6d85..bec0aae62e 100644
--- a/js/tests/unit/dropdown.spec.js
+++ b/js/tests/unit/dropdown.spec.js
@@ -1684,51 +1684,32 @@ describe('Dropdown', () => {
const input = fixtureEl.querySelector('input')
const textarea = fixtureEl.querySelector('textarea')
- const keydownSpace = createEvent('keydown')
- keydownSpace.key = 'Space'
-
- const keydownArrowUp = createEvent('keydown')
- keydownArrowUp.key = 'ArrowUp'
-
- const keydownArrowDown = createEvent('keydown')
- keydownArrowDown.key = 'ArrowDown'
+ const test = (eventKey, elementToDispatch) => {
+ const event = createEvent('keydown')
+ event.key = eventKey
+ elementToDispatch.focus()
+ elementToDispatch.dispatchEvent(event)
+ expect(document.activeElement).toEqual(elementToDispatch, `${elementToDispatch.tagName} still focused`)
+ }
const keydownEscape = createEvent('keydown')
keydownEscape.key = 'Escape'
triggerDropdown.addEventListener('shown.bs.dropdown', () => {
// Key Space
- input.focus()
- input.dispatchEvent(keydownSpace)
+ test('Space', input)
- expect(document.activeElement).toEqual(input, 'input still focused')
-
- textarea.focus()
- textarea.dispatchEvent(keydownSpace)
-
- expect(document.activeElement).toEqual(textarea, 'textarea still focused')
+ test('Space', textarea)
// Key ArrowUp
- input.focus()
- input.dispatchEvent(keydownArrowUp)
+ test('ArrowUp', input)
- expect(document.activeElement).toEqual(input, 'input still focused')
-
- textarea.focus()
- textarea.dispatchEvent(keydownArrowUp)
-
- expect(document.activeElement).toEqual(textarea, 'textarea still focused')
+ test('ArrowUp', textarea)
// Key ArrowDown
- input.focus()
- input.dispatchEvent(keydownArrowDown)
+ test('ArrowDown', input)
- expect(document.activeElement).toEqual(input, 'input still focused')
-
- textarea.focus()
- textarea.dispatchEvent(keydownArrowDown)
-
- expect(document.activeElement).toEqual(textarea, 'textarea still focused')
+ test('ArrowDown', textarea)
// Key Escape
input.focus()