Chromium Code Reviews| Index: third_party/WebKit/LayoutTests/fast/events/inputevents/before-input-order-typing-command.html |
| diff --git a/third_party/WebKit/LayoutTests/fast/events/inputevents/before-input-order-typing-command.html b/third_party/WebKit/LayoutTests/fast/events/inputevents/before-input-order-typing-command.html |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..44a37cd1c1bd0ce1336e73cc222e9499bb63dd71 |
| --- /dev/null |
| +++ b/third_party/WebKit/LayoutTests/fast/events/inputevents/before-input-order-typing-command.html |
| @@ -0,0 +1,41 @@ |
| +<!DOCTYPE html> |
| +<html> |
| +<head> |
| +<title>InputEvent: beforeinput order on typing and command</title> |
| +<script src="../../../resources/testharness.js"></script> |
| +<script src="../../../resources/testharnessreport.js"></script> |
| +</head> |
| +<body> |
| +<input type="text" id="txt"> |
| +<script> |
| +test(function() { |
| + var eventList = ['keydown', 'keypress', 'beforeinput', 'input', 'keyup']; |
| + var expectedEventOrder = [ |
| + // Pressing 'a'. |
| + 'keydown', 'keypress', 'beforeinput', 'input', 'keyup', |
| + // Pressing Ctrl+z, eventSender.keyDown won't send 'keydown' and 'keyup' for Ctrl. |
|
ojan
2016/04/16 00:11:45
Make this a TODO?
chongz
2016/04/18 22:54:47
Actually I realized this should be the correct beh
|
| + /*'keydown',*/ 'keydown', 'beforeinput', 'input', 'keyup', /*'keyup',*/ |
| + ]; |
| + var actualEventOrder = []; |
| + var txt = document.getElementById('txt'); |
| + eventList.forEach(function(eventType) { |
| + txt.addEventListener(eventType, function(event) { |
| + actualEventOrder.push(event.type); |
| + }); |
| + }); |
| + if (!window.eventSender) { |
| + document.write('This test requires eventSender'); |
| + } else { |
| + txt.focus(); |
| + eventSender.keyDown('a'); |
| + var isMacOSX = navigator.userAgent.indexOf('Mac OS X') != -1; |
| + if (!isMacOSX) { |
| + // MacOS's eventSender does not work on hot keys other than arrows. |
| + eventSender.keyDown('z', ['ctrlKey']); |
| + assert_array_equals(actualEventOrder, expectedEventOrder, actualEventOrder.toString()); |
| + } |
| + } |
| +}, 'Testing beforeinput order on typing and command'); |
| +</script> |
| +</body> |
| +</html> |