From: Mike Sherov Date: Sun, 31 Mar 2013 15:49:54 +0000 (-0400) Subject: Selectable Tests: Fix test failures in IE7 by accounting simulated events properly... X-Git-Tag: 1.10.3~37 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=59da723acdb61a9554b6cf157dd7f7ea78d508a4;p=jquery-ui.git Selectable Tests: Fix test failures in IE7 by accounting simulated events properly.(cherry picked from commit 875139ef8fe97d049fc1231e8465b6dc7699e5dd) --- diff --git a/tests/unit/selectable/selectable_events.js b/tests/unit/selectable/selectable_events.js index f933d3890..ae35fa3ce 100644 --- a/tests/unit/selectable/selectable_events.js +++ b/tests/unit/selectable/selectable_events.js @@ -38,27 +38,30 @@ test( "stop", function() { test( "mousedown: initial position of helper", function() { expect( 2 ); - var contentToForceScroll, helper, - element = $("#selectable1").selectable(); + var helperOffset, + element = $( "#selectable1" ).selectable(), + contentToForceScroll = $( "
" ).css({ + height: "10000px", + width: "10000px" + }); - contentToForceScroll = $("
").css({ - height: "10000px", - width: "10000px" - }); + contentToForceScroll.appendTo( "body" ); + $( window ).scrollTop( 100 ).scrollLeft( 100 ); - contentToForceScroll.appendTo("body"); - $( window ).scrollTop( 1 ).scrollLeft( 1 ); element.simulate( "mousedown", { clientX: 10, clientY: 10 }); - helper = $(".ui-selectable-helper"); - equal( helper.css("top"), "11px", "Scroll top should be accounted for." ); - equal( helper.css("left"), "11px", "Scroll left should be accounted for." ); + // we do a GTE comparison here because IE7 erroneously subtracts + // 2 pixels from a simulated mousedown for clientX/Y + // Support: IE7 + helperOffset = $( ".ui-selectable-helper" ).offset(); + ok( helperOffset.top >= 99, "Scroll top should be accounted for." ); + ok( helperOffset.left >= 99, "Scroll left should be accounted for." ); // Cleanup - element.simulate("mouseup"); + element.simulate( "mouseup" ); contentToForceScroll.remove(); $( window ).scrollTop( 0 ).scrollLeft( 0 ); });