diff options
Diffstat (limited to 'tests/unit/autocomplete/methods.js')
-rw-r--r-- | tests/unit/autocomplete/methods.js | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/tests/unit/autocomplete/methods.js b/tests/unit/autocomplete/methods.js new file mode 100644 index 000000000..32080207a --- /dev/null +++ b/tests/unit/autocomplete/methods.js @@ -0,0 +1,48 @@ +define( [ + "jquery", + "ui/autocomplete" +], function( $ ) { + +module( "autocomplete: methods" ); + +test( "destroy", function( assert ) { + expect( 1 ); + assert.domEqual( "#autocomplete", function() { + $( "#autocomplete" ).autocomplete().autocomplete( "destroy" ); + }); +}); + +test( "search, close", function() { + expect( 6 ); + var data = [ "c++", "java", "php", "coldfusion", "javascript", "asp", "ruby", "python", "c", "scala", "groovy", "haskell", "perl" ], + element = $( "#autocomplete" ).autocomplete({ + source: data, + minLength: 0 + }), + menu = element.autocomplete( "widget" ); + + ok( menu.is( ":hidden" ), "menu is hidden on init" ); + + element.autocomplete( "search" ); + ok( menu.is( ":visible" ), "menu is visible after search" ); + equal( menu.find( ".ui-menu-item" ).length, data.length, "all items for a blank search" ); + + element.val( "has" ).autocomplete( "search" ); + equal( menu.find( ".ui-menu-item" ).text(), "haskell", "only one item for set input value" ); + + element.autocomplete( "search", "ja" ); + equal( menu.find( ".ui-menu-item" ).length, 2, "only java and javascript for 'ja'" ); + + element.autocomplete( "close" ); + ok( menu.is( ":hidden" ), "menu is hidden after close" ); +}); + +test( "widget", function( assert ) { + expect( 2 ); + var element = $( "#autocomplete" ).autocomplete(), + widgetElement = element.autocomplete( "widget" ); + equal( widgetElement.length, 1, "one element" ); + assert.hasClasses( widgetElement, "ui-menu" ); +}); + +} ); |