Skip to content
Permalink
Browse files

Widget: Added tests for defaultElement and element normalization betw…

…een jQuery objects, elements and selectors.
  • Loading branch information...
scottgonzalez committed Jan 24, 2011
1 parent 29bfb86 commit bc71499a505d0932668b4ae75603cd9dbfd4a2ac
Showing with 41 additions and 0 deletions.
  1. +41 −0 tests/unit/widget/widget_core.js
@@ -26,6 +26,47 @@ test( "widget creation", function() {
"option method copied over from base widget" );
});

test( "element normalization", function() {
expect( 10 );
var elem;
$.widget( "ui.testWidget", {} );

$.ui.testWidget.prototype._create = function() {
ok( this.element.is( "div" ), "generated div" );
same( this.element.data( "testWidget" ), this, "intance stored in .data()" );
};
$.ui.testWidget();

$.ui.testWidget.prototype.defaultElement = "<span data-test='pass'>";
$.ui.testWidget.prototype._create = function() {
ok( this.element.is( "span[data-test=pass]" ), "generated span with properties" );
same( this.element.data( "testWidget" ), this, "instace stored in .data()" );
};
$.ui.testWidget();

elem = $( "<input>" );
$.ui.testWidget.prototype._create = function() {
same( this.element[ 0 ], elem[ 0 ], "from element" );
same( elem.data( "testWidget" ), this, "instace stored in .data()" );
};
$.ui.testWidget( {}, elem[ 0 ] );

elem = $( "<div>" );
$.ui.testWidget.prototype._create = function() {
same( this.element[ 0 ], elem[ 0 ], "from jQuery object" );
same( elem.data( "testWidget" ), this, "instace stored in .data()" );
};
$.ui.testWidget( {}, elem );

elem = $( "<div id='element-normalization-selector'></div>" )
.appendTo( "#main" );
$.ui.testWidget.prototype._create = function() {
same( this.element[ 0 ], elem[ 0 ], "from selector" );
same( elem.data( "testWidget" ), this, "instace stored in .data()" );
};
$.ui.testWidget( {}, "#element-normalization-selector" );
});

test( "jQuery usage", function() {
expect( 11 );

0 comments on commit bc71499

Please sign in to comment.
You can’t perform that action at this time.