2 * mobile widget unit tests
5 module('jquery.mobile.widget.js');
7 test( "getting data from creation options", function(){
8 var expected = "bizzle";
10 $.mobile.widget.prototype.options = { "fooBar" : true };
11 $.mobile.widget.prototype.element = $("<div data-"+$.mobile.ns+"foo-bar=" + expected + ">");
12 deepEqual($.mobile.widget.prototype._getCreateOptions()["fooBar"], expected);
15 test( "getting no data when the options are empty", function(){
18 $.mobile.widget.prototype.options = {};
19 $.mobile.widget.prototype.element = $("<div data-"+$.mobile.ns+"foo-bar=" + expected + ">");
20 deepEqual($.mobile.widget.prototype._getCreateOptions(), expected);
23 test( "getting no data when the element has none", function(){
26 $.mobile.widget.prototype.options = { "fooBar" : true };
27 $.mobile.widget.prototype.element = $("<div>");
28 deepEqual($.mobile.widget.prototype._getCreateOptions(), expected);
31 test( "elements embedded in sub page elements are excluded on create when they match the keep native selector", function() {
32 // uses default keep native of data-role=none
33 $("#enhance-prevented")
34 .append('<label for="unenhanced">Text Input:</label><input type="text" name="name" id="unenhanced" value="" data-'+$.mobile.ns+'role="none" />')
37 ok( !$("#unenhanced").hasClass( "ui-input-text" ), "doesn't have the ui input text class (unenhanced)");
40 test( "elements embedded in sub page elements are included on create when they don't match the keep native selector", function() {
42 // uses default keep native of data-role=none
44 .append('<label for="enhanced">Text Input:</label><input type="text" name="name" id="enhanced" value=""/>')
47 ok( $("#enhanced").hasClass( "ui-input-text" ), "has the ui input text class (unenhanced)");