mirror of
https://github.com/jquery/jquery-ui.git
synced 2024-11-21 11:04:24 +00:00
Tests: Accept delayed focusout in IE with jQuery 1.8
In IE with jQuery 1.8 focusout may not happen immediately so some checks need to be done later. Closes gh-1952
This commit is contained in:
parent
dff0dc0d6a
commit
9380d2734e
@ -187,7 +187,13 @@ QUnit.test( "keyboard support - LEFT, RIGHT, UP, DOWN, HOME, END, SPACE, ENTER",
|
|||||||
} ),
|
} ),
|
||||||
tabs = element.find( ".ui-tabs-nav li" ),
|
tabs = element.find( ".ui-tabs-nav li" ),
|
||||||
panels = element.find( ".ui-tabs-panel" ),
|
panels = element.find( ".ui-tabs-panel" ),
|
||||||
keyCode = $.ui.keyCode;
|
keyCode = $.ui.keyCode,
|
||||||
|
|
||||||
|
// Support: IE 11 with jQuery 1.8.
|
||||||
|
// In IE with jQuery 1.8 focusout may not happen immediately so some checks
|
||||||
|
// need to be done later.
|
||||||
|
isFocusoutImmediate = !( document.documentMode &&
|
||||||
|
jQuery.fn.jquery.indexOf( "1.8." ) === 0 );
|
||||||
|
|
||||||
element.tabs( "instance" ).delay = 1;
|
element.tabs( "instance" ).delay = 1;
|
||||||
|
|
||||||
@ -202,7 +208,9 @@ QUnit.test( "keyboard support - LEFT, RIGHT, UP, DOWN, HOME, END, SPACE, ENTER",
|
|||||||
|
|
||||||
tabs.eq( 0 ).simulate( "keydown", { keyCode: keyCode.DOWN } );
|
tabs.eq( 0 ).simulate( "keydown", { keyCode: keyCode.DOWN } );
|
||||||
assert.hasClasses( tabs.eq( 1 ), "ui-state-focus", "DOWN moves focus to next tab" );
|
assert.hasClasses( tabs.eq( 1 ), "ui-state-focus", "DOWN moves focus to next tab" );
|
||||||
|
if ( isFocusoutImmediate ) {
|
||||||
assert.lacksClasses( tabs.eq( 0 ), "ui-state-focus", "first tab is no longer focused" );
|
assert.lacksClasses( tabs.eq( 0 ), "ui-state-focus", "first tab is no longer focused" );
|
||||||
|
}
|
||||||
assert.equal( tabs.eq( 1 ).attr( "aria-selected" ), "true", "second tab has aria-selected=true" );
|
assert.equal( tabs.eq( 1 ).attr( "aria-selected" ), "true", "second tab has aria-selected=true" );
|
||||||
assert.equal( tabs.eq( 0 ).attr( "aria-selected" ), "false", "first tab has aria-selected=false" );
|
assert.equal( tabs.eq( 0 ).attr( "aria-selected" ), "false", "first tab has aria-selected=false" );
|
||||||
assert.ok( panels.eq( 1 ).is( ":hidden" ), "second panel is still hidden" );
|
assert.ok( panels.eq( 1 ).is( ":hidden" ), "second panel is still hidden" );
|
||||||
@ -247,6 +255,9 @@ QUnit.test( "keyboard support - LEFT, RIGHT, UP, DOWN, HOME, END, SPACE, ENTER",
|
|||||||
|
|
||||||
// Left, home, space
|
// Left, home, space
|
||||||
function step2() {
|
function step2() {
|
||||||
|
if ( !isFocusoutImmediate ) {
|
||||||
|
assert.lacksClasses( tabs.eq( 0 ), "ui-state-focus", "first tab is no longer focused" );
|
||||||
|
}
|
||||||
assert.equal( tabs.eq( 2 ).attr( "aria-selected" ), "true", "third tab has aria-selected=true" );
|
assert.equal( tabs.eq( 2 ).attr( "aria-selected" ), "true", "third tab has aria-selected=true" );
|
||||||
assert.equal( tabs.eq( 0 ).attr( "aria-selected" ), "false", "first tab has aria-selected=false" );
|
assert.equal( tabs.eq( 0 ).attr( "aria-selected" ), "false", "first tab has aria-selected=false" );
|
||||||
assert.ok( panels.eq( 2 ).is( ":visible" ), "third panel is visible" );
|
assert.ok( panels.eq( 2 ).is( ":visible" ), "third panel is visible" );
|
||||||
|
Loading…
Reference in New Issue
Block a user