forked from elastic/kibana
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathhelpers.test.tsx
71 lines (59 loc) · 2.01 KB
/
helpers.test.tsx
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
/*
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
* or more contributor license agreements. Licensed under the Elastic License
* 2.0; you may not use this file except in compliance with the Elastic License
* 2.0.
*/
import { mount } from 'enzyme';
import React from 'react';
import {
ariaIndexToArrayIndex,
arrayIndexToAriaIndex,
getNotesContainerClassName,
getRowRendererClassName,
isArrowRight,
} from './helpers';
describe('helpers', () => {
describe('ariaIndexToArrayIndex', () => {
test('it returns the expected array index', () => {
expect(ariaIndexToArrayIndex(1)).toEqual(0);
});
});
describe('arrayIndexToAriaIndex', () => {
test('it returns the expected aria index', () => {
expect(arrayIndexToAriaIndex(0)).toEqual(1);
});
});
describe('isArrowRight', () => {
test('it returns true if the right arrow key was pressed', () => {
let result = false;
const onKeyDown = (keyboardEvent: React.KeyboardEvent) => {
result = isArrowRight(keyboardEvent);
};
const wrapper = mount(<div onKeyDown={onKeyDown} />);
wrapper.find('div').simulate('keydown', { key: 'ArrowRight' });
wrapper.update();
expect(result).toBe(true);
});
test('it returns false if another key was pressed', () => {
let result = false;
const onKeyDown = (keyboardEvent: React.KeyboardEvent) => {
result = isArrowRight(keyboardEvent);
};
const wrapper = mount(<div onKeyDown={onKeyDown} />);
wrapper.find('div').simulate('keydown', { key: 'Enter' });
wrapper.update();
expect(result).toBe(false);
});
});
describe('getRowRendererClassName', () => {
test('it returns the expected class name', () => {
expect(getRowRendererClassName(2)).toBe('row-renderer-2');
});
});
describe('getNotesContainerClassName', () => {
test('it returns the expected class name', () => {
expect(getNotesContainerClassName(2)).toBe('notes-container-2');
});
});
});