imported the whole jquery-ui package, refreshed with 1.10.2
[myslice.git] / third-party / jquery-ui-1.10.2 / tests / unit / resizable / resizable_events.js
1 /*
2  * resizable_events.js
3  */
4 (function($) {
5
6 module("resizable: events");
7
8 test("start", function() {
9
10         expect(5);
11
12         var count = 0,
13                 handle = ".ui-resizable-se";
14
15         $("#resizable1").resizable({
16                 handles: "all",
17                 start: function(event, ui) {
18                         equal( ui.size.width, 100, "compare width" );
19                         equal( ui.size.height, 100, "compare height" );
20                         equal( ui.originalSize.width, 100, "compare original width" );
21                         equal( ui.originalSize.height, 100, "compare original height" );
22                         count++;
23                 }
24         });
25
26         TestHelpers.resizable.drag(handle, 50, 50);
27
28         equal(count, 1, "start callback should happen exactly once");
29
30 });
31
32 test( "resize", function() {
33
34         expect( 9 );
35
36         var count = 0,
37                 handle = ".ui-resizable-se";
38
39         $("#resizable1").resizable({
40                 handles: "all",
41                 resize: function( event, ui ) {
42                         if ( count === 0 ) {
43                                 equal( ui.size.width, 125, "compare width" );
44                                 equal( ui.size.height, 125, "compare height" );
45                                 equal( ui.originalSize.width, 100, "compare original width" );
46                                 equal( ui.originalSize.height, 100, "compare original height" );
47                         } else {
48                                 equal( ui.size.width, 150, "compare width" );
49                                 equal( ui.size.height, 150, "compare height" );
50                                 equal( ui.originalSize.width, 100, "compare original width" );
51                                 equal( ui.originalSize.height, 100, "compare original height" );
52                         }
53                         count++;
54                 }
55         });
56
57         TestHelpers.resizable.drag( handle, 50, 50 );
58
59         equal( count, 2, "resize callback should happen exactly once per size adjustment" );
60
61 });
62
63 test( "resize (min/max dimensions)", function() {
64
65         expect( 5 );
66
67         var count = 0,
68                 handle = ".ui-resizable-se";
69
70         $("#resizable1").resizable({
71                 handles: "all",
72                 minWidth: 60,
73                 minHeight: 60,
74                 maxWidth: 100,
75                 maxHeight: 100,
76                 resize: function( event, ui ) {
77                         equal( ui.size.width, 60, "compare width" );
78                         equal( ui.size.height, 60, "compare height" );
79                         equal( ui.originalSize.width, 100, "compare original width" );
80                         equal( ui.originalSize.height, 100, "compare original height" );
81                         count++;
82                 }
83         });
84
85         TestHelpers.resizable.drag( handle, -200, -200 );
86
87         equal( count, 1, "resize callback should happen exactly once per size adjustment" );
88
89 });
90
91 test( "resize (containment)", function() {
92
93         expect( 5 );
94
95         var count = 0,
96                 handle = ".ui-resizable-se",
97                 container = $("#resizable1").wrap("<div>").parent().css({
98                         height: "100px",
99                         width: "100px"
100                 });
101
102         $("#resizable1").resizable({
103                 handles: "all",
104                 containment: container,
105                 resize: function( event, ui ) {
106                         equal( ui.size.width, 10, "compare width" );
107                         equal( ui.size.height, 10, "compare height" );
108                         equal( ui.originalSize.width, 100, "compare original width" );
109                         equal( ui.originalSize.height, 100, "compare original height" );
110                         count++;
111                 }
112         });
113
114         // Prove you can't resize outside containment by dragging southeast corner southeast
115         TestHelpers.resizable.drag( handle, 100, 100 );
116
117         // Prove you can't resize outside containment by dragging southeast corner northwest
118         TestHelpers.resizable.drag( handle, -200, -200 );
119
120         equal( count, 1, "resize callback should happen exactly once per size adjustment" );
121
122 });
123
124 test("resize (grid)", function() {
125
126         expect(5);
127
128         var count = 0,
129                 handle = ".ui-resizable-se";
130
131         $("#resizable1").resizable({
132                 handles: "all",
133                 grid: 50,
134                 resize: function(event, ui) {
135                         equal( ui.size.width, 150, "compare width" );
136                         equal( ui.size.height, 150, "compare height" );
137                         equal( ui.originalSize.width, 100, "compare original width" );
138                         equal( ui.originalSize.height, 100, "compare original height" );
139                         count++;
140                 }
141         });
142
143         TestHelpers.resizable.drag(handle, 50, 50);
144
145         equal(count, 1, "resize callback should happen exactly once per grid-unit size adjustment");
146
147 });
148
149 test("stop", function() {
150
151         expect(5);
152
153         var count = 0,
154                 handle = ".ui-resizable-se";
155
156         $("#resizable1").resizable({
157                 handles: "all",
158                 stop: function(event, ui) {
159                         equal( ui.size.width, 150, "compare width" );
160                         equal( ui.size.height, 150, "compare height" );
161                         equal( ui.originalSize.width, 100, "compare original width" );
162                         equal( ui.originalSize.height, 100, "compare original height" );
163                         count++;
164                 }
165         });
166
167         TestHelpers.resizable.drag(handle, 50, 50);
168
169         equal(count, 1, "stop callback should happen exactly once");
170
171 });
172
173 })(jQuery);