blob: 9af9e496be83a9a4d9a7636701a5e194ea5f07a9 [file] [log] [blame]
<!DOCTYPE html>
<html>
<head>
<script src="../../../resources/js-test.js"></script>
</head>
<body>
<select id="select">
<option>Canada</option>
<option>Spain</option>
<option>United Arab Emerites</option>
<option>United States</option>
</select>
<script>
description('Two keystrokes are considered as part of one typehead session if time difference between them is less than 1 sec');
window.jsTestIsAsync = true;
function keyDown(key, modifiers)
{
if (!window.eventSender)
return;
eventSender.keyDown(key, modifiers);
}
var popup = document.getElementById("select");
function test1() {
debug('1. space key as part of search string.');
popup.focus();
popup.selectedIndex = 0;
keyDown('U');
keyDown('n');
keyDown('i');
keyDown('t');
keyDown('e');
keyDown('d');
keyDown(' ');
keyDown('S');
shouldBeFalse('internals.isSelectPopupVisible(popup)');
shouldBeEqualToString('popup.value', 'United States');
popup.blur();
debug('2. space key as part of search string with some delay.');
popup.focus();
popup.selectedIndex = 0
keyDown('U');
keyDown('n');
keyDown('i');
keyDown('t');
keyDown('e');
keyDown('d');
keyDown(' ');
internals.resetTypeAheadSession(popup);
keyDown('S');
shouldBeFalse('internals.isSelectPopupVisible(popup)');
shouldBeEqualToString('popup.value', 'Spain');
popup.blur();
debug('3. space key to open popup menu.');
popup.focus();
popup.selectedIndex = 0
keyDown('U');
keyDown('n');
keyDown('i');
keyDown('t');
keyDown('e');
keyDown('d');
internals.resetTypeAheadSession(popup);
keyDown(' ');
shouldBeTrue('internals.isSelectPopupVisible(popup)');
shouldBeEqualToString('popup.value', 'United Arab Emerites');
popup.blur();
finishJSTest();
}
test1();
</script>
</body>