Tizen 2.0 Release
[platform/framework/web/web-ui-fw.git] / libs / js / jquery-mobile-1.2.0 / tests / unit / widget / widget_core.js
1 /*
2  * mobile widget unit tests
3  */
4 (function($){
5         module('jquery.mobile.widget.js');
6
7         test( "getting data from creation options", function(){
8                 var expected = "bizzle";
9
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);
13         });
14
15         test( "getting no data when the options are empty", function(){
16                                 var expected = {};
17
18                 $.mobile.widget.prototype.options = {};
19                 $.mobile.widget.prototype.element = $("<div data-"+$.mobile.ns+"foo-bar=" + expected + ">");
20                 deepEqual($.mobile.widget.prototype._getCreateOptions(), expected);
21         });
22
23         test( "getting no data when the element has none", function(){
24                 var expected = {};
25
26                 $.mobile.widget.prototype.options = { "fooBar" : true };
27                 $.mobile.widget.prototype.element = $("<div>");
28                 deepEqual($.mobile.widget.prototype._getCreateOptions(), expected);
29         });
30
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" />')
35                                 .trigger("create");
36
37                 ok( !$("#unenhanced").hasClass( "ui-input-text" ), "doesn't have the ui input text class (unenhanced)");
38         });
39
40         test( "elements embedded in sub page elements are included on create when they don't match the keep native selector", function() {
41
42                 // uses default keep native of data-role=none
43                 $("#enhance-allowed")
44                                 .append('<label for="enhanced">Text Input:</label><input type="text" name="name" id="enhanced" value=""/>')
45                                 .trigger("create");
46
47                 ok( $("#enhanced").hasClass( "ui-input-text" ), "has the ui input text class (unenhanced)");
48         });
49 })(jQuery);