2 * Unit Test : Toggle Switch
6 /*jslint browser: true*/
7 /*global $, jQuery, test, equal, ok*/
8 $( document ).ready( function ( ) {
9 module("toggleswitch" );
11 var unit_toggleswitch = function ( widget ) {
16 toggleswitch = widget.parent( ).find('.ui-slider-switch') ;
17 ok( toggleswitch, "Create" );
20 equal( toggleswitch.hasClass('ui-slider'), true , "Class check" );
23 equal( toggleswitch.find('span.ui-slider-label').length, 2 , "makrup check : 2 options present" );
24 equal( toggleswitch.find('span.ui-slider-label')[1].innerHTML, "On" , "makrup check : correct text in option" );
25 equal( toggleswitch.find('span.ui-slider-label')[0].innerHTML , "Off" , "makrup check : correct text in option" );
26 ok( toggleswitch.find('a.ui-slider-handle') , "makrup check : toggle handle present" );
27 equal( toggleswitch.find('a.ui-slider-handle').attr('title'), 'On', "makrup check : handle present" );
28 equal( toggleswitch.find('span.ui-slider-label')[1].style.width, '100%', "makrup check : 2 options present" );
30 /*check control after firing events*/
31 toggleswitch.trigger('vmousedown') ;
32 toggleswitch.trigger('vmouseup') ;
33 equal( toggleswitch.find('a.ui-slider-handle').attr('title'), 'Off', "Markup check after firing click event first time" );
34 equal( toggleswitch.find('span.ui-slider-label')[0].style.width, '100%', "Markup check after firing click event first time" );
35 equal( toggleswitch.find('span.ui-slider-label')[1].style.width, '0%', "Markup check after firing click event first time" );
36 toggleswitch.trigger('vmousedown') ;
37 toggleswitch.trigger('vmouseup') ;
38 equal( toggleswitch.find('a.ui-slider-handle').attr('title'), 'On', "Markup check after firing click event second time" );
39 equal( toggleswitch.find('span.ui-slider-label')[0].style.width, '0%', "Markup check after firing click event second time" );
40 equal( toggleswitch.find('span.ui-slider-label')[1].style.width, '100%', "Markup check after firing click event second time" );
42 /* Check Enable , Disbale */
43 widget.slider("disable" );
44 toggleswitch.trigger('vmousedown') ;
45 toggleswitch.trigger('vmouseup') ;
46 equal( toggleswitch.find('a.ui-slider-handle').attr('title'), 'On', "Markup check after firing click event after switch was disabled" );
47 equal( toggleswitch.find('span.ui-slider-label')[1].style.width, '100%', "Markup check after firing click event after switch was disabled" );
48 equal( toggleswitch.find('span.ui-slider-label')[0].style.width, '0%', "Markup check after firing click event after switch was disabled" );
50 widget.slider("enable" );
51 toggleswitch.trigger('vmousedown') ;
52 toggleswitch.trigger('vmouseup') ;
53 equal( toggleswitch.find('a.ui-slider-handle').attr('title'), 'Off', "Markup check after firing click event after switch was re enabled" );
54 equal( toggleswitch.find('span.ui-slider-label')[0].style.width, '100%', "Markup check after firing click event after switch was re enabled" );
55 equal( toggleswitch.find('span.ui-slider-label')[1].style.width, '0%', "Markup check after firing click event after switch was re enabled" );
58 widget.find('option')[1].innerHTML = "False" ;
59 equal( toggleswitch.find('a.ui-slider-handle').attr('title'), 'Off', "API Refresh : Stoggleswitch is not modified before refresh is called" );
60 widget.slider('refresh') ;
61 equal( toggleswitch.find('a.ui-slider-handle').attr('title'), 'False', "API Refresh : Stoggleswitch is modified after refresh is called" );
65 test( "normal toggleswitch", function ( ) {
66 $('#toggleswitch1').page( ) ;
67 unit_toggleswitch( $("#newslider" ) );
70 test( "normal toggleswitch -dynamic", function ( ) {
71 var createEvent = false ,
72 toggleHTML = "<select data-role='slider'name='slider'id='dynamicslider'data-texton='true'>" +
73 "<option value='on'>On</option>" +
74 "<option value='off'>Off</option>" +
77 $('#toggleswitch2').page( ) ;
78 $('#toggleswitch2').find(":jqmData(role=content)" ).append( toggleHTML );
79 $('#dynamicslider').slider( {create : function ( ) {
82 $('#toggleswitch2').find(":jqmData(role=content)" ).trigger("create" );
83 equal( createEvent, true, "Create Event" );
84 unit_toggleswitch( $("#dynamicslider" ) );