]> source.dussan.org Git - jquery-ui.git/commitdiff
Selectmenu Tests: improve events tests, check for original option element not only...
authorFelix Nagel <info@felixnagel.com>
Sun, 12 May 2013 19:02:03 +0000 (21:02 +0200)
committerFelix Nagel <info@felixnagel.com>
Sun, 12 May 2013 19:02:03 +0000 (21:02 +0200)
tests/unit/selectmenu/selectmenu_events.js

index 8fd85a85123e7a6217966a7a06c0ed5deefa03a7..99d5b591cbbadf939c1bb5c1a849c383b1492ada 100644 (file)
@@ -8,19 +8,21 @@ module( "selectmenu: events", {
 
 test( "change", function () {
        expect( 4 );
+       
+       var that = this;
 
        this.element.selectmenu({
                change: function ( event, ui ) {
                        ok( event, "change event fired on change" );
                        equal( event.type, "selectmenuchange", "event type set to selectmenuchange" );
-                       equal( ui.item.element[ 0 ].nodeName.toLowerCase(), "option", "ui.item.element[ 0 ] points to original option element" );
-                       equal( ui.item.value, value, "ui.item.value property updated correctly" );
+                       equal( ui.item.element[ 0 ], options.eq( ui.item.index )[ 0 ], "ui.item.element contains original option element" );
+                       equal( ui.item.value, options.eq( ui.item.index ).text(), "ui.item.value property updated correctly" );
                }
        });
 
        var button = this.element.selectmenu( "widget" ),
                menu = this.element.selectmenu( "menuWidget" ).parent(),
-               value = this.element.find( "option" ).first().text();
+               options = this.element.find( "option" );
 
        button.simulate( "focus" ).simulate( "click" );
        menu.find( "a" ).first().simulate( "mouseover" ).simulate( "click" );
@@ -44,13 +46,14 @@ test( "close", function () {
 test( "focus", function () {
        expect( 3 );
 
-       var button, menu, links;
+       var button, menu, links,
+               options = this.element.find( "option" );
 
        this.element.selectmenu({
                focus: function ( event, ui ) {
                        ok( event, "focus event fired on mouseover" );
                        equal( event.type, "selectmenufocus", "event type set to selectmenufocus" );
-                       equal( ui.item.element[ 0 ].nodeName.toLowerCase(), "option", "ui points to original option element" );
+                       equal( ui.item.element[ 0 ], options.eq( ui.item.index )[ 0 ], "ui.item.element contains original option element" );
                }
        });
 
@@ -89,12 +92,13 @@ test( "select", function () {
                select: function ( event, ui ) {
                        ok( event, "select event fired on item select" );
                        equal( event.type, "selectmenuselect", "event type set to selectmenuselect" );
-                       equal( ui.item.element[ 0 ].nodeName.toLowerCase(), "option", "ui points to original option element" );
+                       equal( ui.item.element[ 0 ], options.eq( ui.item.index )[ 0 ], "ui.item.element contains original option element" );
                }
        });
 
        var button = this.element.selectmenu( "widget" ),
-               menu = this.element.selectmenu( "menuWidget" ).parent();
+               menu = this.element.selectmenu( "menuWidget" ).parent(),
+               options = this.element.find( "option" );
 
        button.simulate( "focus" ).simulate( "click" );
        menu.find( "a" ).first().simulate( "mouseover" ).simulate( "click" );