UNPKG

axe-core

Version:

Accessibility engine for automated Web UI testing

81 lines (65 loc) 2.24 kB
describe('table.isHeader', function () { 'use strict'; function $id(id) { return document.getElementById(id); } var fixture = $id('fixture'); var cell; afterEach(function () { fixture.innerHTML = '<table><tr><th id="cell"></th></tr></table>'; cell = $id('cell'); }); it('should return true if table.isColumnHeader return true', function () { var orig = axe.commons.table.isColumnHeader; axe.commons.table.isColumnHeader = function () { return true; }; var orig2 = axe.commons.table.isRowHeader; axe.commons.table.isRowHeader = function () { return false; }; assert.isTrue(axe.commons.table.isHeader(cell)); axe.commons.table.isColumnHeader = orig; axe.commons.table.isRowHeader = orig2; }); it('should return true if table.isRowHeader return true', function () { var orig = axe.commons.table.isRowHeader; axe.commons.table.isRowHeader = function () { return true; }; var orig2 = axe.commons.table.isColumnHeader; axe.commons.table.isColumnHeader = function () { return false; }; assert.isTrue(axe.commons.table.isHeader(cell)); axe.commons.table.isRowHeader = orig; axe.commons.table.isColumnHeader = orig2; }); it('should return false if table.isRowHeader and table.isColumnHeader return false', function () { var orig = axe.commons.table.isRowHeader; axe.commons.table.isRowHeader = function () { return false; }; var orig2 = axe.commons.table.isColumnHeader; axe.commons.table.isColumnHeader = function () { return false; }; assert.isFalse(axe.commons.table.isHeader(cell)); axe.commons.table.isRowHeader = orig; axe.commons.table.isColumnHeader = orig2; }); it('should return true if referenced by another cells headers attr', function () { fixture.innerHTML = '<table>' + '<tr><td id="target">1</td><td headers="bar target foo"></tr>' + '</table>'; var target = $id('target'); assert.isTrue(axe.commons.table.isHeader(target)); }); it('should return false otherwise', function () { fixture.innerHTML = '<table>' + '<tr><td class="target">1</td><td headers="bar monkeys foo"></tr>' + '</table>'; var target = document.querySelector('.target'); assert.isFalse(axe.commons.table.isHeader(target)); }); });