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); |