Add tests for tab and tabpanel role generation
This commit is contained in:
parent
c8fc54fd77
commit
7779cb0506
@ -34,17 +34,18 @@
|
|||||||
|
|
||||||
$(tabs).each(function(index) {
|
$(tabs).each(function(index) {
|
||||||
|
|
||||||
// if there is no aria selected role present, set it to false
|
var ariaSelected = $(this).attr('aria-selected');
|
||||||
|
var id = $(this).attr('id');
|
||||||
|
|
||||||
var selectedVar = $(this).attr('aria-selected');
|
if(!ariaSelected){
|
||||||
|
|
||||||
if(!selectedVar){
|
|
||||||
$(this).attr('aria-selected', 'false');
|
$(this).attr('aria-selected', 'false');
|
||||||
}
|
}
|
||||||
|
|
||||||
// add IDs to tabs
|
// add IDs to tabs
|
||||||
|
|
||||||
$(this).attr('id', 'tab' + index + 1);
|
if(!id){
|
||||||
|
$(this).attr('id', 'tab' + parseInt(index + 1));
|
||||||
|
}
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -58,7 +59,13 @@
|
|||||||
// add IDs to tab panels
|
// add IDs to tab panels
|
||||||
|
|
||||||
$(tabPanels).each(function(index) {
|
$(tabPanels).each(function(index) {
|
||||||
$(this).attr('id', 'tabpanel' + index + 1);
|
|
||||||
|
var id = $(this).attr('id');
|
||||||
|
|
||||||
|
if(!id){
|
||||||
|
$(this).attr('id', 'tabpanel' + parseInt(index + 1));
|
||||||
|
}
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
};
|
};
|
||||||
|
@ -78,4 +78,54 @@ $(document).ready(function () {
|
|||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
|
test("Tabs and tabpanel ID generation with IDs set by user", function () {
|
||||||
|
|
||||||
|
var tabContainer = $('#qunit-fixture #tab-container');
|
||||||
|
$(tabContainer).find("ul li:nth-child(2)").attr('id', 'something');
|
||||||
|
$(tabContainer).children().not('ul').first().attr('id', 'else');
|
||||||
|
var tabList = $(tabContainer).find('> ul');
|
||||||
|
var tabs = tabList.find('li');
|
||||||
|
var tabPanels = $(tabContainer).children().not('ul');
|
||||||
|
tabContainer.skeletonTabs();
|
||||||
|
|
||||||
|
equal($(tabList).find(':nth-child(2)').attr('id'),
|
||||||
|
'something',
|
||||||
|
'Expect 2nd tab id role to be "something"');
|
||||||
|
|
||||||
|
equal($(tabPanels).first().attr('id'),
|
||||||
|
'else',
|
||||||
|
'Expect 2nd tab id role to be "else"');
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
test("Tab role generation", function () {
|
||||||
|
|
||||||
|
var tabContainer = $('#qunit-fixture #tab-container');
|
||||||
|
var tabList = $(tabContainer).find('> ul');
|
||||||
|
var tabs = tabList.find('li');
|
||||||
|
tabContainer.skeletonTabs();
|
||||||
|
|
||||||
|
$(tabs).each(function(index) {
|
||||||
|
equals($(this).attr('role'),
|
||||||
|
'tab',
|
||||||
|
'Expect tab at position ' + index + ' to have an id');
|
||||||
|
});
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
test("Tabpanel role generation", function () {
|
||||||
|
|
||||||
|
var tabContainer = $('#qunit-fixture #tab-container');
|
||||||
|
var tabList = $(tabContainer).find('> ul');
|
||||||
|
var tabPanels = $(tabContainer).children().not('ul');
|
||||||
|
tabContainer.skeletonTabs();
|
||||||
|
|
||||||
|
$(tabPanels).each(function(index) {
|
||||||
|
equals($(this).attr('role'),
|
||||||
|
'tabpanel',
|
||||||
|
'Expect tab panel at position ' + index + ' to have an id');
|
||||||
|
});
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
});
|
});
|
Loading…
Reference in New Issue
Block a user