| 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..d24eadbf57c927cbc624d0f8074de8b197b69470
|
| --- /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 'z' with modifier 'ctrlKey'.
|
| + 'keydown', 'beforeinput', 'input', '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>
|
|
|