@@ -8,26 +8,34 @@ describe('keyBindings', () => {
8
8
const altKey = true
9
9
const metaKey = true
10
10
11
+ const defaults = { ctrlKey : false , shiftKey : false , altKey : false , metaKey : false }
12
+
11
13
test ( 'keyComboFromEvent' , ( ) => {
12
- strictEqual ( keyComboFromEvent ( { key : 'a' } ) , 'A' )
13
- strictEqual ( keyComboFromEvent ( { key : 'A' } ) , 'A' )
14
- strictEqual ( keyComboFromEvent ( { key : '=' } ) , '=' )
15
- strictEqual ( keyComboFromEvent ( { shiftKey, key : '+' } ) , 'Shift++' )
16
- strictEqual ( keyComboFromEvent ( { altKey, key : '=' } ) , 'Alt+=' )
17
- strictEqual ( keyComboFromEvent ( { key : '-' } ) , '-' )
18
- strictEqual ( keyComboFromEvent ( { shiftKey, key : '-' } ) , 'Shift+-' )
19
- strictEqual ( keyComboFromEvent ( { ctrlKey, key : 'a' } ) , 'Ctrl+A' )
20
- strictEqual ( keyComboFromEvent ( { metaKey, key : 'a' } ) , 'Ctrl+A' )
21
- strictEqual ( keyComboFromEvent ( { shiftKey, key : 'a' } ) , 'Shift+A' )
22
- strictEqual ( keyComboFromEvent ( { ctrlKey, shiftKey, key : 'a' } ) , 'Ctrl+Shift+A' )
23
- strictEqual ( keyComboFromEvent ( { key : 'Control' } ) , '' ) // does not happen in practice
24
- strictEqual ( keyComboFromEvent ( { ctrlKey, key : 'Control' } ) , 'Ctrl' )
14
+ strictEqual ( keyComboFromEvent ( { ...defaults , key : 'a' } ) , 'A' )
15
+ strictEqual ( keyComboFromEvent ( { ...defaults , key : 'A' } ) , 'A' )
16
+ strictEqual ( keyComboFromEvent ( { ...defaults , key : '=' } ) , '=' )
17
+ strictEqual ( keyComboFromEvent ( { ...defaults , shiftKey, key : '+' } ) , 'Shift++' )
18
+ strictEqual ( keyComboFromEvent ( { ...defaults , altKey, key : '=' } ) , 'Alt+=' )
19
+ strictEqual ( keyComboFromEvent ( { ...defaults , key : '-' } ) , '-' )
20
+ strictEqual ( keyComboFromEvent ( { ...defaults , shiftKey, key : '-' } ) , 'Shift+-' )
21
+ strictEqual ( keyComboFromEvent ( { ...defaults , ctrlKey, key : 'a' } ) , 'Ctrl+A' )
22
+ strictEqual (
23
+ keyComboFromEvent ( { ...defaults , metaKey, key : 'a' } , '+' , ( ) => true ) ,
24
+ 'Ctrl+A'
25
+ )
26
+ strictEqual ( keyComboFromEvent ( { ...defaults , shiftKey, key : 'a' } ) , 'Shift+A' )
27
+ strictEqual ( keyComboFromEvent ( { ...defaults , ctrlKey, shiftKey, key : 'a' } ) , 'Ctrl+Shift+A' )
28
+ strictEqual ( keyComboFromEvent ( { ...defaults , key : 'Control' } ) , '' ) // does not happen in practice
29
+ strictEqual ( keyComboFromEvent ( { ...defaults , ctrlKey, key : 'Control' } ) , 'Ctrl' )
25
30
} )
26
31
27
32
test ( 'keyComboFromEvent with custom separator' , ( ) => {
28
33
const separator = '///'
29
- strictEqual ( keyComboFromEvent ( { key : 'a' } , separator ) , 'A' )
30
- strictEqual ( keyComboFromEvent ( { ctrlKey, key : 'a' } , separator ) , 'Ctrl///A' )
31
- strictEqual ( keyComboFromEvent ( { ctrlKey, shiftKey, key : 'A' } , separator ) , 'Ctrl///Shift///A' )
34
+ strictEqual ( keyComboFromEvent ( { ...defaults , key : 'a' } , separator ) , 'A' )
35
+ strictEqual ( keyComboFromEvent ( { ...defaults , ctrlKey, key : 'a' } , separator ) , 'Ctrl///A' )
36
+ strictEqual (
37
+ keyComboFromEvent ( { ...defaults , ctrlKey, shiftKey, key : 'A' } , separator ) ,
38
+ 'Ctrl///Shift///A'
39
+ )
32
40
} )
33
41
} )
0 commit comments