@@ -245,56 +245,72 @@ QUnit.test( "nested resizable", function( assert ) {
245
245
} ) ;
246
246
247
247
QUnit . test ( "Resizable with scrollbars and box-sizing: border-box" , function ( assert ) {
248
- assert . expect ( 2 ) ;
248
+ assert . expect ( 4 ) ;
249
+
250
+ var style = $ ( "<style> * { box-sizing: border-box; } </style>" ) . appendTo ( "head" ) ;
249
251
252
+ //Both scrollbars
250
253
var elementContent = $ ( "<div>" )
251
254
. css ( {
252
- width : 50 ,
253
- height : 200 ,
254
- padding : 10 ,
255
- border : 5 ,
256
- borderStyle : "solid"
255
+ width : "200px" ,
256
+ height : "200px" ,
257
+ padding : "10px" ,
258
+ border : "5px" ,
259
+ borderStyle : "solid" ,
260
+ margin : "20px"
257
261
} )
258
262
. appendTo ( "#resizable1" ) ,
259
- element = $ ( "#resizable1" ) . css ( { overflow : "auto" } ) . resizable ( ) ,
263
+ element = $ ( "#resizable1" ) . css ( " overflow" , "auto" ) . resizable ( ) ,
260
264
handle = ".ui-resizable-se" ;
261
265
262
- $ ( "*" ) . css ( "box-sizing" , "border-box" ) ;
266
+ testHelper . drag ( handle , 10 , 10 ) ;
267
+ assert . equal ( element . width ( ) , 110 , "element width (both scrollbars)" ) ;
268
+ assert . equal ( element . height ( ) , 110 , "element height (both scrollbars)" ) ;
263
269
270
+ //Single (vertical) scrollbar.
271
+ elementContent . css ( "width" , "50px" ) ;
264
272
testHelper . drag ( handle , 10 , 10 ) ;
265
- assert . equal ( element . width ( ) , 110 , "element width" ) ;
266
- assert . equal ( element . height ( ) , 110 , "element height" ) ;
273
+ assert . equal ( element . width ( ) , 120 , "element width (only vertical scrollbar) " ) ;
274
+ assert . equal ( element . height ( ) , 120 , "element height (only vertical scrollbar) " ) ;
267
275
268
- elementContent . remove ( ) ;
276
+ style . remove ( ) ;
269
277
} ) ;
270
278
271
279
QUnit . test ( "Resizable with scrollbars and box-sizing: content-box" , function ( assert ) {
272
- assert . expect ( 2 ) ;
280
+ assert . expect ( 4 ) ;
281
+
282
+ var style = $ ( "<style> * { box-sizing: content-box; } </style>" ) . appendTo ( "head" ) ;
273
283
284
+ //Both scrollbars
274
285
var elementContent = $ ( "<div>" )
275
286
. css ( {
276
- width : 50 ,
277
- height : 200 ,
278
- padding : 10 ,
279
- border : 5 ,
280
- borderStyle : "solid"
287
+ width : "200px" ,
288
+ height : "200px" ,
289
+ padding : "10px" ,
290
+ border : "5px" ,
291
+ borderStyle : "solid" ,
292
+ margin : "20px"
281
293
} )
282
294
. appendTo ( "#resizable1" ) ,
283
- element = $ ( "#resizable1" ) . css ( { overflow : "auto" } ) . resizable ( ) ,
295
+ element = $ ( "#resizable1" ) . css ( " overflow" , "auto" ) . resizable ( ) ,
284
296
handle = ".ui-resizable-se" ;
285
297
286
- $ ( "*" ) . css ( "box-sizing" , "content-box" ) ;
287
-
288
298
// In some browsers scrollbar may change element size (when "box-sizing: content-box")
289
299
var widthBefore = element . innerWidth ( ) ;
290
300
var heightBefore = element . innerHeight ( ) ;
291
301
292
302
testHelper . drag ( handle , 10 , 10 ) ;
303
+ assert . equal ( parseFloat ( element . innerWidth ( ) ) , widthBefore + 10 , "element width (both scrollbars)" ) ;
304
+ assert . equal ( parseFloat ( element . innerHeight ( ) ) , heightBefore + 10 , "element height (both scrollbars)" ) ;
293
305
294
- assert . equal ( parseFloat ( element . innerWidth ( ) ) , widthBefore + 10 , "element width" ) ;
295
- assert . equal ( parseFloat ( element . innerHeight ( ) ) , heightBefore + 10 , "element height" ) ;
306
+ //Single (vertical) scrollbar.
307
+ elementContent . css ( "width" , "50px" ) ;
308
+
309
+ testHelper . drag ( handle , 10 , 10 ) ;
310
+ assert . equal ( parseFloat ( element . innerWidth ( ) ) , widthBefore + 20 , "element width (only vertical scrollbar)" ) ;
311
+ assert . equal ( parseFloat ( element . innerHeight ( ) ) , heightBefore + 20 , "element height (only vertical scrollbar)" ) ;
296
312
297
- elementContent . remove ( ) ;
313
+ style . remove ( ) ;
298
314
} ) ;
299
315
300
316
} ) ;
0 commit comments