Export 0.1.45
[framework/web/web-ui-fw.git] / libs / js / jquery-mobile-1.1.0 / tests / unit / zoom / zoom.js
1 /*
2  * mobile Fixed Toolbar unit tests
3  */
4 (function($){
5         module('jquery.mobile.fixedToolbar.js');
6         
7         var defaultMeta = $( "meta[name=viewport]" ).attr("content");
8         
9         
10         test( "User zooming is enabled by default", function(){
11                 ok( $.mobile.zoom.enabled === true, "property is true" );               
12         });
13         
14         test( "The zoom lock is disabled by default", function(){
15                 ok( $.mobile.zoom.locked === false, "property is false" );              
16         });
17         
18         
19         test( "Meta viewport content is manipulated with maximum-scale", function(){
20                 $.mobile.zoom.disable();
21                 ok( $( "meta[name=viewport]" ).attr( "content" ).match( /,maximum-scale=1, user-scalable=no/ ), "The meta viewport tag's content contains maximum-scale=1, user-scalable=yes after enable is called" );
22                 
23                 $.mobile.zoom.enable();
24                 ok( $( "meta[name=viewport]" ).attr( "content" ).match( /,maximum-scale=10, user-scalable=yes/ ), "The meta viewport tag's content contains maximum-scale=1, user-scalable=yes0, user-scalable=no after enable is called" );
25                 
26         });
27         
28         test( "Meta viewport content restore method restores it back to original value", function(){
29                 $.mobile.zoom.disable();
30                 ok( $( "meta[name=viewport]" ).attr( "content" ).match( /,maximum-scale=1, user-scalable=no/ ), "The meta viewport tag's content contains maximum-scale=1, user-scalable=yes after enable is called" );
31                 
32                 $.mobile.zoom.restore();
33                 ok( $( "meta[name=viewport]" ).attr( "content" ) === defaultMeta, "The meta viewport tag's content matches its default state" );
34                 
35         });
36         
37         
38         
39         test( "When locked, the enable method does nothing", function(){
40                 //enabled it first
41                 $.mobile.zoom.locked = false;
42                 $.mobile.zoom.disable();
43                 $.mobile.zoom.locked = true;
44                 $.mobile.zoom.enable();
45                 
46                 ok( $( "meta[name=viewport]" ).attr( "content" ).match( /,maximum-scale=1, user-scalable=no/ ), "The meta viewport tag's content contains maximum-scale=1, user-scalable=yes after enable is called" );
47                 $.mobile.zoom.locked = false;
48                 $.mobile.zoom.enable();
49                 
50         });
51         
52         test( "When locked, the disable method does nothing", function(){
53                 //enabled it first
54                 $.mobile.zoom.locked = false;
55                 $.mobile.zoom.enable();
56                 $.mobile.zoom.locked = true;
57                 $.mobile.zoom.disable();
58                 
59                 ok( $( "meta[name=viewport]" ).attr( "content" ).match( /,maximum-scale=10, user-scalable=yes/ ), "The meta viewport tag's content contains maximum-scale=1, user-scalable=yes0, user-scalable=no after disable is called" );
60                 
61                 $.mobile.zoom.locked = false;
62                 $.mobile.zoom.enable();
63                 
64         });
65         
66         test( "When locked, the enable method with a true 'unlock' argument works", function(){
67                 //enabled it first
68                 $.mobile.zoom.locked = false;
69                 $.mobile.zoom.disable();
70                 $.mobile.zoom.locked = true;
71                 $.mobile.zoom.enable( true );
72                 
73                 ok( $( "meta[name=viewport]" ).attr( "content" ).match( /,maximum-scale=10, user-scalable=yes/ ), "The meta viewport tag's content contains maximum-scale=1, user-scalable=yes0, user-scalable=no after enable is called" );
74                 ok( $.mobile.zoom.locked === false, "The locked property is false again" );
75                 
76                 $.mobile.zoom.locked = false;
77                 $.mobile.zoom.enable();
78                 
79         });
80         
81         
82         test( "When locked, the disable method with a true 'lock' argument works", function(){
83                 //enabled it first
84                 $.mobile.zoom.locked = false;
85                 $.mobile.zoom.enable();
86
87                 $.mobile.zoom.disable( true );
88                 
89                 ok( $( "meta[name=viewport]" ).attr( "content" ).match( /,maximum-scale=1, user-scalable=no/ ), "The meta viewport tag's content contains maximum-scale=1, user-scalable=yes after disable is called" );
90                 ok( $.mobile.zoom.locked === true, "The locked property is true" );
91                 
92                 $.mobile.zoom.locked = false;
93                 $.mobile.zoom.enable();
94                 
95         });
96         
97         
98         
99 })(jQuery);