OLD | NEW |
---|---|
(Empty) | |
1 <!DOCTYPE html> | |
2 <link rel="help" href="http://www.w3.org/TR/DOM-Level-3-Events/#events-KeyboardE vent-code" /> | |
3 <script src="../../resources/js-test.js"></script>- | |
4 <textarea id="textarea"></textarea> | |
5 <script> | |
6 description('Tests KeyboardEvent.code attribute'); | |
7 var textarea = document.getElementById('textarea'); | |
8 textarea.addEventListener('keydown', recordKeyEvent, false); | |
9 textarea.addEventListener('keyup', recordKeyEvent, false); | |
10 textarea.addEventListener('keypress', recordKeyEvent, false); | |
11 textarea.focus(); | |
12 | |
13 var lastKeyboardDownEvent, lastKeyboardPressEvent, lastKeyboardUpEvent; | |
14 | |
15 function recordKeyEvent(ev) { | |
16 if (window.eventSender) { | |
17 if (ev.type === "keydown") | |
18 lastKeyboardDownEvent = ev; | |
19 else if (ev.type === "keyup") | |
20 lastKeyboardUpEvent = ev; | |
21 else if (ev.type === "keypress") | |
22 lastKeyboardPressEvent = ev; | |
Rick Byers
2015/01/23 20:38:30
nit: remove extra space
Habib Virji
2015/01/26 11:32:35
Done.
| |
23 } else { | |
24 debug('Type=' + ev.type + ',' + 'code=' + ev.code); | |
25 } | |
26 } | |
27 | |
28 if (window.eventSender) { | |
29 debug('AlphaNumeric Keys'); | |
30 eventSender.keyDown('A'); | |
31 shouldEvaluateTo('lastKeyboardDownEvent.code', '\'KeyA\'') ; | |
32 shouldEvaluateTo('lastKeyboardUpEvent.code', '\'KeyA\'') ; | |
33 shouldEvaluateTo('lastKeyboardPressEvent.code', '\'KeyA\'') ; | |
34 eventSender.keyDown('a'); // Small letters. | |
35 shouldEvaluateTo('lastKeyboardDownEvent.code', '\'KeyA\'') ; | |
36 eventSender.keyDown('M'); | |
37 shouldEvaluateTo('lastKeyboardDownEvent.code', '\'KeyM\'') ; | |
38 eventSender.keyDown('m'); // Small letters. | |
39 shouldEvaluateTo('lastKeyboardDownEvent.code', '\'KeyM\''); | |
40 eventSender.keyDown('Z'); | |
41 shouldEvaluateTo('lastKeyboardDownEvent.code', '\'KeyZ\'') ; | |
42 eventSender.keyDown('z'); | |
43 shouldEvaluateTo('lastKeyboardDownEvent.code', '\'KeyZ\''); | |
44 eventSender.keyDown('0'); | |
45 shouldEvaluateTo('lastKeyboardDownEvent.code', '\'Digit0\''); | |
46 shouldEvaluateTo('lastKeyboardUpEvent.code', '\'Digit0\''); | |
47 shouldEvaluateTo('lastKeyboardPressEvent.code', '\'Digit0\''); | |
48 eventSender.keyDown('4'); | |
49 shouldEvaluateTo('lastKeyboardDownEvent.code', '\'Digit4\''); | |
50 eventSender.keyDown('9'); | |
51 shouldEvaluateTo('lastKeyboardDownEvent.code', '\'Digit9\''); | |
52 eventSender.keyDown('backspace'); | |
53 shouldEvaluateTo('lastKeyboardDownEvent.code', '\'Backspace\''); | |
54 | |
55 debug('Functional Keys'); | |
56 eventSender.keyDown('leftControl'); | |
57 shouldEvaluateTo('lastKeyboardDownEvent.code', '\'ControlLeft\''); | |
58 shouldEvaluateTo('lastKeyboardUpEvent.code', '\'ControlLeft\''); | |
59 eventSender.keyDown('rightControl'); | |
60 shouldEvaluateTo('lastKeyboardDownEvent.code', '\'ControlRight\''); | |
61 eventSender.keyDown('leftShift'); | |
62 shouldEvaluateTo('lastKeyboardDownEvent.code', '\'ShiftLeft\''); | |
63 eventSender.keyDown('rightShift'); | |
64 shouldEvaluateTo('lastKeyboardDownEvent.code', '\'ShiftRight\''); | |
65 eventSender.keyDown('leftAlt'); | |
66 shouldEvaluateTo('lastKeyboardDownEvent.code', '\'AltLeft\''); | |
67 eventSender.keyDown('rightAlt'); | |
68 shouldEvaluateTo('lastKeyboardDownEvent.code', '\'AltRight\''); | |
69 eventSender.keyDown('\n'); | |
70 shouldEvaluateTo('lastKeyboardDownEvent.code', '\'Enter\''); | |
71 eventSender.keyDown('menu'); | |
72 shouldEvaluateTo('lastKeyboardDownEvent.code', '\'ContextMenu\''); | |
73 eventSender.keyDown(' '); | |
74 shouldEvaluateTo('lastKeyboardDownEvent.code', '\'Space\''); | |
75 shouldEvaluateTo('lastKeyboardUpEvent.code', '\'Space\''); | |
76 shouldEvaluateTo('lastKeyboardPressEvent.code', '\'Space\''); | |
77 eventSender.keyDown('\t'); | |
78 shouldEvaluateTo('lastKeyboardDownEvent.code', '\'Tab\''); | |
79 shouldEvaluateTo('lastKeyboardUpEvent.code', '\'Tab\''); | |
80 | |
81 debug('Control Pad'); | |
82 eventSender.keyDown('insert'); | |
83 shouldEvaluateTo('lastKeyboardDownEvent.code', '\'Insert\''); | |
84 shouldEvaluateTo('lastKeyboardUpEvent.code', '\'Insert\''); | |
85 eventSender.keyDown('delete'); | |
86 shouldEvaluateTo('lastKeyboardDownEvent.code', '\'Delete\''); | |
87 eventSender.keyDown('home'); | |
88 shouldEvaluateTo('lastKeyboardDownEvent.code', '\'Home\''); | |
89 eventSender.keyDown('end'); | |
90 shouldEvaluateTo('lastKeyboardDownEvent.code', '\'End\''); | |
91 eventSender.keyDown('pageUp'); | |
92 shouldEvaluateTo('lastKeyboardDownEvent.code', '\'PageUp\''); | |
93 eventSender.keyDown('pageDown'); | |
94 shouldEvaluateTo('lastKeyboardDownEvent.code', '\'PageDown\''); | |
95 shouldEvaluateTo('lastKeyboardUpEvent.code', '\'PageDown\''); | |
96 | |
97 debug('Arrow Pad Section'); | |
98 eventSender.keyDown('rightArrow'); | |
99 shouldEvaluateTo('lastKeyboardDownEvent.code', '\'ArrowRight\''); | |
100 shouldEvaluateTo('lastKeyboardUpEvent.code', '\'ArrowRight\''); | |
101 eventSender.keyDown('downArrow'); | |
102 shouldEvaluateTo('lastKeyboardDownEvent.code', '\'ArrowDown\''); | |
103 eventSender.keyDown('leftArrow'); | |
104 shouldEvaluateTo('lastKeyboardDownEvent.code', '\'ArrowLeft\''); | |
105 eventSender.keyDown('upArrow'); | |
106 shouldEvaluateTo('lastKeyboardDownEvent.code', '\'ArrowUp\''); | |
107 shouldEvaluateTo('lastKeyboardUpEvent.code', '\'ArrowUp\''); | |
108 | |
109 debug('Number Pad Section'); | |
110 eventSender.keyDown('numLock'); | |
111 shouldEvaluateTo('lastKeyboardDownEvent.code', '\'NumLock\''); | |
112 shouldEvaluateTo('lastKeyboardUpEvent.code', '\'NumLock\''); | |
113 | |
114 debug('Function Section'); | |
115 eventSender.keyDown('escape'); | |
116 shouldEvaluateTo('lastKeyboardDownEvent.code', '\'Escape\''); | |
117 shouldEvaluateTo('lastKeyboardUpEvent.code', '\'Escape\''); | |
118 eventSender.keyDown('F1'); | |
119 shouldEvaluateTo('lastKeyboardDownEvent.code', '\'F1\''); | |
120 eventSender.keyDown('F6'); | |
121 shouldEvaluateTo('lastKeyboardDownEvent.code', '\'F6\''); | |
122 eventSender.keyDown('F12'); | |
123 shouldEvaluateTo('lastKeyboardDownEvent.code', '\'F12\''); | |
124 eventSender.keyDown('printScreen'); | |
125 shouldEvaluateTo('lastKeyboardDownEvent.code', '\'PrintScreen\''); | |
126 shouldEvaluateTo('lastKeyboardUpEvent.code', '\'PrintScreen\''); | |
127 } | |
128 </script> | |
OLD | NEW |