From 50958718c22aab5a4f5061c313531259761648c5 Mon Sep 17 00:00:00 2001 From: Scott González Date: Thu, 24 Feb 2011 10:22:51 +0100 Subject: Autocomplete: Added support for contenteditable elements. Fixes #6914 - Autocomplete: Support contenteditable. --- tests/unit/autocomplete/autocomplete.html | 1 + tests/unit/autocomplete/autocomplete_events.js | 40 ++++++++++++++++++++++++++ 2 files changed, 41 insertions(+) (limited to 'tests/unit') diff --git a/tests/unit/autocomplete/autocomplete.html b/tests/unit/autocomplete/autocomplete.html index ef9d64baf..c4c3d8745 100644 --- a/tests/unit/autocomplete/autocomplete.html +++ b/tests/unit/autocomplete/autocomplete.html @@ -40,6 +40,7 @@
+
diff --git a/tests/unit/autocomplete/autocomplete_events.js b/tests/unit/autocomplete/autocomplete_events.js index 95a86425c..b0ee1acb4 100644 --- a/tests/unit/autocomplete/autocomplete_events.js +++ b/tests/unit/autocomplete/autocomplete_events.js @@ -51,6 +51,46 @@ test("all events", function() { }, 50); }); +test("all events - contenteditable", function() { + expect(12); + var ac = $("#autocomplete-contenteditable").autocomplete({ + delay: 0, + source: data, + search: function(event) { + same(event.type, "autocompletesearch"); + }, + open: function(event) { + same(event.type, "autocompleteopen"); + }, + focus: function(event, ui) { + same(event.type, "autocompletefocus"); + same(ui.item, {label:"java", value:"java"}); + }, + close: function(event) { + same(event.type, "autocompleteclose"); + same( $(".ui-menu:visible").length, 0 ); + }, + select: function(event, ui) { + same(event.type, "autocompleteselect"); + same(ui.item, {label:"java", value:"java"}); + }, + change: function(event, ui) { + same(event.type, "autocompletechange"); + same(ui.item, {label:"java", value:"java"}); + same( $(".ui-menu:visible").length, 0 ); + start(); + } + }); + stop(); + ac.focus().text("ja").keydown(); + setTimeout(function() { + same( $(".ui-menu:visible").length, 1 ); + ac.simulate("keydown", { keyCode: $.ui.keyCode.DOWN }); + ac.simulate("keydown", { keyCode: $.ui.keyCode.ENTER }); + $.browser.msie ? ac.simulate("blur") : ac.blur(); + }, 50); +}); + test("change without selection", function() { expect(2); stop(); -- cgit v1.2.3