2 * segmentcontrol unit tests
4 /*jslint browser: true*/
5 /*global $, jQuery, test, equal, ok*/
7 module( "SegmentControl" );
9 var unit_segmentcontrol = function ( widget, inputCount, layout ) {
10 var segmentGroup = widget;
13 ok( segmentGroup, "Create" );
14 equal( "fieldcontain", segmentGroup.jqmData("role" ), "segment control generate" );
15 equal( segmentGroup.find( "input" ).length, inputCount, "segment control listitem count test" );
16 equal( segmentGroup.find( "input" ).is( ":jqmData(icon=segment-titlestyle-segonly)" ), true, "segment control style test" );
19 equal( segmentGroup.hasClass("ui-field-contain" ), true, "ui-field-contain class added" ) ;
20 equal( segmentGroup.find(":jqmData(role=controlgroup )" ).hasClass("ui-controlgroup-" + layout ), true ) ;
21 equal( segmentGroup.find(":jqmData(role=controlgroup )" ).jqmData("type" ) , layout, "data-type" ) ;
25 test( "segmentcontrol 2btn-h test", function ( ) {
26 unit_segmentcontrol( $("#segmentcontrol-2btn" ), 2 , "horizontal" );
29 test( "segmentcontrol 3btn-h test", function ( ) {
30 unit_segmentcontrol( $("#segmentcontrol-3btn" ), 3, "horizontal" );
33 test( "segmentcontrol 4btn-h test", function ( ) {
34 unit_segmentcontrol( $("#segmentcontrol-4btn" ), 4, "horizontal" );
37 test( "segmentcontrol 2btn-v test", function ( ) {
38 unit_segmentcontrol( $("#segmentcontrol-2btn-v" ), 2, "vertical" );
41 test( "segmentcontrol 3btn-v test", function ( ) {
42 unit_segmentcontrol( $("#segmentcontrol-3btn-v" ), 3 , "vertical" );
45 test( "segmentcontrol 4btn-v test", function ( ) {
46 unit_segmentcontrol( $("#segmentcontrol-4btn-v" ), 4, "vertical" );
50 test( "segmentcontrol 2btn-h test - dynamic", function ( ) {
53 var segmentControlHTML = '<div data-nstest-role= "content">' +
54 '<div data-role= "fieldcontain" id= "segmentcontrol-2btn">' +
55 '<fieldset data-role= "controlgroup" data-type= "horizontal">' +
56 '<input type= "radio" name= "radio-view-1" data-icon= "segment-titlestyle-segonly" id= "segment1" value= "on" checked= "checked" />' +
57 '<label for= "segment1">List</label>' +
58 '<input type= "radio" name= "radio-view-1" data-icon= "segment-titlestyle-segonly" id= "segment2" value= "off" />' +
59 '<label for= "segment2">Grid</label>' +
63 $('#segmentcontrol_page').find(":jqmData(role=content)" ).empty( );
64 $('#segmentcontrol_page').find(":jqmData(role=content)" ).append( segmentControlHTML ).trigger('create') ;
65 unit_segmentcontrol( $("#segmentcontrol-2btn" ), 2 , "horizontal" );
68 test( "segmentcontrol 3btn test-h - dynamic", function ( ) {
71 var segmentControlHTML = '<div data-nstest-role= "content">' +
72 '<div data-role= "fieldcontain" id= "segmentcontrol-2btn">' +
73 '<fieldset data-role= "controlgroup" data-type= "horizontal">' +
74 '<input type= "radio" name= "radio-view-1" data-icon= "segment-titlestyle-segonly" id= "segment1" value= "on" checked= "checked" />' +
75 '<label for= "segment1">List</label>' +
76 '<input type= "radio" name= "radio-view-1" data-icon= "segment-titlestyle-segonly" id= "segment2" value= "off" />' +
77 '<label for= "segment2">Grid</label>' +
78 '<input type= "radio" name= "radio-view-1" data-icon= "segment-titlestyle-segonly" id= "segment3" value= "off" />' +
79 '<label for= "segment3">Grid</label>' +
83 $('#segmentcontrol_page').find(":jqmData(role=content)" ).empty( );
85 $('#segmentcontrol_page').find(":jqmData(role=content)" ).append( segmentControlHTML ).trigger('create') ;
86 unit_segmentcontrol( $("#segmentcontrol-3btn" ), 3, "horizontal" );
89 test( "segmentcontrol 4btn test-h - dynamic", function ( ) {
92 var segmentControlHTML = '<div data-nstest-role= "content">' +
93 '<div data-role= "fieldcontain" id= "segmentcontrol-2btn">' +
94 '<fieldset data-role= "controlgroup" data-type= "horizontal">' +
95 '<input type= "radio" name= "radio-view-1" data-icon= "segment-titlestyle-segonly" id= "segment1" value= "on" checked= "checked" />' +
96 '<label for= "segment1">List</label>' +
97 '<input type= "radio" name= "radio-view-1" data-icon= "segment-titlestyle-segonly" id= "segment2" value= "off" />' +
98 '<label for= "segment2">Grid</label>' +
99 '<input type= "radio" name= "radio-view-1" data-icon= "segment-titlestyle-segonly" id= "segment3" value= "off" />' +
100 '<label for= "segment3">Grid</label>' +
101 '<input type= "radio" name= "radio-view-1" data-icon= "segment-titlestyle-segonly" id= "segment4" value= "off" />' +
102 '<label for= "segment4">Grid</label>' +
106 $('#segmentcontrol_page').find(":jqmData(role=content)" ).empty( );
108 $('#segmentcontrol_page').find(":jqmData(role=content)" ).append( segmentControlHTML ).trigger('create') ;
109 unit_segmentcontrol( $("#segmentcontrol-4btn" ), 4, "horizontal" );
112 test( "segmentcontrol 2btn-v test - dynamic", function ( ) {
115 var segmentControlHTML = '<div data-nstest-role= "content">' +
116 '<div data-role= "fieldcontain" id= "segmentcontrol-2btn">' +
117 '<fieldset data-role= "controlgroup" data-type= "vertical">' +
118 '<input type= "radio" name= "radio-view-1" data-icon= "segment-titlestyle-segonly" id= "segment1" value= "on" checked= "checked" />' +
119 '<label for= "segment1">List</label>' +
120 '<input type= "radio" name= "radio-view-1" data-icon= "segment-titlestyle-segonly" id= "segment2" value= "off" />' +
121 '<label for= "segment2">Grid</label>' +
125 $('#segmentcontrol_page').find(":jqmData(role=content)" ).empty( );
127 $('#segmentcontrol_page').find(":jqmData(role=content)" ).append( segmentControlHTML ).trigger('create') ;
128 unit_segmentcontrol( $("#segmentcontrol-2btn-v" ), 2, "vertical" );
131 test( "segmentcontrol 3btn-v test - dynamic", function ( ) {
134 var segmentControlHTML = '<div data-nstest-role= "content">' +
135 '<div data-role= "fieldcontain" id= "segmentcontrol-2btn">' +
136 '<fieldset data-role= "controlgroup" data-type= "vertical">' +
137 '<input type= "radio" name= "radio-view-1" data-icon= "segment-titlestyle-segonly" id= "segment1" value= "on" checked= "checked" />' +
138 '<label for= "segment1">List</label>' +
139 '<input type= "radio" name= "radio-view-1" data-icon= "segment-titlestyle-segonly" id= "segment2" value= "off" />' +
140 '<label for= "segment2">Grid</label>' +
141 '<input type= "radio" name= "radio-view-1" data-icon= "segment-titlestyle-segonly" id= "segment3" value= "off" />' +
142 '<label for= "segment3">Grid</label>' +
146 $('#segmentcontrol_page').find(":jqmData(role=content)" ).empty( );
147 $('#segmentcontrol_page').find(":jqmData(role=content)" ).append( segmentControlHTML ).trigger('create') ;
148 unit_segmentcontrol( $("#segmentcontrol-3btn-v" ), 3 , "vertical" );
151 test( "segmentcontrol 4btn-v test - dynamic", function ( ) {
153 var segmentControlHTML = '<div data-nstest-role= "content">' +
154 '<div data-role= "fieldcontain" id= "segmentcontrol-2btn">' +
155 '<fieldset data-role= "controlgroup" data-type= "vertical">' +
156 '<input type= "radio" name= "radio-view-1" data-icon= "segment-titlestyle-segonly" id= "segment1" value= "on" checked= "checked" />' +
157 '<label for= "segment1">List</label>' +
158 '<input type= "radio" name= "radio-view-1" data-icon= "segment-titlestyle-segonly" id= "segment2" value= "off" />' +
159 '<label for= "segment2">Grid</label>' +
160 '<input type= "radio" name= "radio-view-1" data-icon= "segment-titlestyle-segonly" id= "segment3" value= "off" />' +
161 '<label for= "segment3">Grid</label>' +
162 '<input type= "radio" name= "radio-view-1" data-icon= "segment-titlestyle-segonly" id= "segment4" value= "off" />' +
163 '<label for= "segment4">Grid</label>' +
167 $('#segmentcontrol_page').find(":jqmData(role=content)" ).empty( );
169 $('#segmentcontrol_page').find(":jqmData(role=content)" ).append( segmentControlHTML ).trigger('create') ;
170 unit_segmentcontrol( $("#segmentcontrol-4btn-v" ), 4, "vertical" );