Index: third_party/WebKit/LayoutTests/fast/events/inputevents/before-input-data.html |
diff --git a/third_party/WebKit/LayoutTests/fast/events/inputevents/before-input-data.html b/third_party/WebKit/LayoutTests/fast/events/inputevents/before-input-data.html |
new file mode 100644 |
index 0000000000000000000000000000000000000000..ea46b1dfc42a39fabdc51563717928c717ee64f7 |
--- /dev/null |
+++ b/third_party/WebKit/LayoutTests/fast/events/inputevents/before-input-data.html |
@@ -0,0 +1,38 @@ |
+<!DOCTYPE html> |
+<html> |
+<head> |
+<title>InputEvent: beforeinput data</title> |
+<script src="../../../resources/testharness.js"></script> |
+<script src="../../../resources/testharnessreport.js"></script> |
+</head> |
+<body> |
+<input type="text" id="txt"> |
+<script> |
+test(function() { |
+ var lastData = ''; |
+ var txt = document.getElementById('txt'); |
+ txt.addEventListener('beforeinput', function(event) { |
+ lastData = event.data; |
+ }); |
+ if (!window.eventSender) { |
+ document.write('This test requires eventSender'); |
+ } else { |
+ function testKeyDownData(key, modifiers, data) { |
+ eventSender.keyDown(key, modifiers); |
+ assert_equals(lastData, data, `${modifiers.toString()}+${key} should produce data: ${data}`); |
+ } |
+ |
+ txt.focus(); |
+ // Typing |
+ testKeyDownData('a', [], 'a'); |
+ testKeyDownData('4', [], '4'); |
+ testKeyDownData('backspace', [], ''); |
+ // Shift+foo doesn't work with eventSender, but actually |data| is correct according to manual tests. |
ojan
2016/04/16 00:11:45
Make this a TODO to fix this?
chongz
2016/04/18 22:54:47
Done.
|
+ // testKeyDownData('l', ['shiftKey'], 'L'); |
+ // testKeyDownData('6', ['shiftKey'], '^'); |
+ testKeyDownData(' ', [], ' '); |
+ } |
+}, 'Testing beforeinput data'); |
+</script> |
+</body> |
+</html> |