Skip to content

Commit

Permalink
feat: Deprecated Internet Explorer support
Browse files Browse the repository at this point in the history
  • Loading branch information
WilcoFiers committed Sep 7, 2022
1 parent fff39db commit 5bfac9d
Show file tree
Hide file tree
Showing 26 changed files with 1,227 additions and 1,415 deletions.
35 changes: 0 additions & 35 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -52,18 +52,6 @@ jobs:
key: v9-cache-unix-{{ checksum "package-lock.json" }}
paths:
- node_modules
dependencies_win:
<<: *defaults
<<: *win_box
steps:
- checkout
- <<: *set_npm_auth
- <<: *restore_dependency_cache_win
- run: npm ci
- save_cache:
key: v9-cache-win-{{ checksum "package-lock.json" }}
paths:
- node_modules

# Run ESLINT
lint:
Expand All @@ -88,23 +76,6 @@ jobs:
- run: npm run test:integration:chrome
- run: npm run test:integration:firefox

# Run the test suite in IE in windows
test_win:
<<: *defaults
<<: *win_box
steps:
- checkout
# npm i or restore cache
- <<: *restore_dependency_cache_win
- run: npm run build
- run: npm run test -- --browsers IE
# install selenium
- run: |
choco install selenium-ie-driver --version 3.141.5
export PATH=/c/tools/selenium:$PATH
echo $PATH
- run: npm run test:integration:ie

# Run examples under `doc/examples`
test_examples:
<<: *defaults
Expand Down Expand Up @@ -312,7 +283,6 @@ workflows:
jobs:
# install deps
- dependencies_unix
- dependencies_win
# Run linting
- lint:
requires:
Expand All @@ -321,10 +291,6 @@ workflows:
- test_unix:
requires:
- lint
# Run IE/ Windows test on all commits
- test_win:
requires:
- dependencies_win
- test_examples:
requires:
- test_unix
Expand Down Expand Up @@ -354,7 +320,6 @@ workflows:
type: approval
requires:
- test_unix
- test_win
- test_examples
- test_locales
- test_virtual_rules
Expand Down
7 changes: 3 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -78,9 +78,9 @@ The [axe-core API](doc/API.md) fully supports the following browsers:
- Google Chrome v42 and above
- Mozilla Firefox v38 and above
- Apple Safari v7 and above
- Internet Explorer v11
- Internet Explorer v11 (DEPRECATED)

Support means that we will fix bugs and attempt to test each browser regularly. Only Firefox, Chrome, and Internet Explorer 11 are currently tested on every pull request.
Support means that we will fix bugs and attempt to test each browser regularly. Only Chrome and Firefox are currently tested on every pull request.

There is limited support for JSDOM. We will attempt to make all rules compatible with JSDOM but where this is not possible, we recommend turning those rules off. Currently the `color-contrast` rule is known not to work with JSDOM.

Expand Down Expand Up @@ -127,8 +127,7 @@ axe.configure({
},
'aria-errormessage': {
// Note: doT (https://github.com/olado/dot) templates are supported here.
fail:
'Der Wert der aria-errormessage ${data.values}` muss eine Technik verwenden, um die Message anzukündigen (z. B., aria-live, aria-describedby, role=alert, etc.).'
fail: 'Der Wert der aria-errormessage ${data.values}` muss eine Technik verwenden, um die Message anzukündigen (z. B., aria-live, aria-describedby, role=alert, etc.).'
}
// ...
}
Expand Down
2 changes: 0 additions & 2 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -86,11 +86,9 @@
"integration:apg": "mocha test/aria-practices/*.spec.js",
"integration:chrome": "npm run integration -- browser=Chrome",
"integration:firefox": "npm run integration -- browser=Firefox",
"integration:ie": "npm run integration -- browser=\"Internet Explorer\"",
"test:integration": "npm run test:integration:chrome",
"test:integration:chrome": "start-server-and-test 9876 integration:chrome",
"test:integration:firefox": "start-server-and-test 9876 integration:firefox",
"test:integration:ie": "start-server-and-test 9876 integration:ie",
"test:examples": "node ./doc/examples/test-examples",
"test:act": "karma start test/act-mapping/karma.config.js",
"test:act:debug": "npm run test:act -- --no-single-run --browsers=Chrome",
Expand Down
174 changes: 85 additions & 89 deletions test/checks/color/color-contrast.js

Large diffs are not rendered by default.

86 changes: 40 additions & 46 deletions test/checks/lists/only-dlitems.js
Original file line number Diff line number Diff line change
@@ -1,19 +1,17 @@
describe('only-dlitems', function() {
describe('only-dlitems', function () {
'use strict';

var fixture = document.getElementById('fixture');
var checkSetup = axe.testUtils.checkSetup;
var shadowSupport = axe.testUtils.shadowSupport;
var isIE11 = axe.testUtils.isIE11;

var checkContext = axe.testUtils.MockCheckContext();

afterEach(function() {
afterEach(function () {
fixture.innerHTML = '';
checkContext.reset();
});

it('should return false if the list has no contents', function() {
it('should return false if the list has no contents', function () {
var checkArgs = checkSetup('<dl id="target"></dl>');

assert.isFalse(
Expand All @@ -23,7 +21,7 @@ describe('only-dlitems', function() {
);
});

it('should return true if the list has non-dd/dt contents', function() {
it('should return true if the list has non-dd/dt contents', function () {
var checkArgs = checkSetup('<dl id="target"><p>Not a list</p></dl>');

assert.isTrue(
Expand All @@ -34,7 +32,7 @@ describe('only-dlitems', function() {
assert.deepEqual(checkContext._relatedNodes, [fixture.querySelector('p')]);
});

it('should return true if the list has non-dd content through role change', function() {
it('should return true if the list has non-dd content through role change', function () {
var checkArgs = checkSetup(
'<dl id="target"><dd role="menuitem">Not a list</dd></dl>'
);
Expand All @@ -46,7 +44,7 @@ describe('only-dlitems', function() {
);
});

it('should return true if the list has non-dt content through role change', function() {
it('should return true if the list has non-dt content through role change', function () {
var checkArgs = checkSetup(
'<dl id="target"><dt role="menuitem">Not a list</dt></dl>'
);
Expand All @@ -58,7 +56,7 @@ describe('only-dlitems', function() {
);
});

it('should return false if the list has only a dd', function() {
it('should return false if the list has only a dd', function () {
var checkArgs = checkSetup('<dl id="target"><dd>A list</dd></dl>');

assert.isFalse(
Expand All @@ -68,7 +66,7 @@ describe('only-dlitems', function() {
);
});

it('should return true if <link> is used along side dt with its role changed', function() {
it('should return true if <link> is used along side dt with its role changed', function () {
var checkArgs = checkSetup(
'<dl id="target"><link rel="stylesheet" href="theme.css"><dt role="menuitem">A list</dt></dl>'
);
Expand All @@ -79,7 +77,7 @@ describe('only-dlitems', function() {
);
});

it('should return false if the list has only a dt', function() {
it('should return false if the list has only a dt', function () {
var checkArgs = checkSetup('<dl id="target"><dt>A list</dt></dl>');

assert.isFalse(
Expand All @@ -89,7 +87,7 @@ describe('only-dlitems', function() {
);
});

it('should return false if the list has dt and dd with child content', function() {
it('should return false if the list has dt and dd with child content', function () {
var checkArgs = checkSetup(
'<dl id="target"><dt><p>An item</p></dt><dd>A list</dd></dl>'
);
Expand All @@ -101,7 +99,7 @@ describe('only-dlitems', function() {
);
});

it('should return false if the list has dt and dd', function() {
it('should return false if the list has dt and dd', function () {
var checkArgs = checkSetup(
'<dl id="target"><dt>An item</dt><dd>A list</dd></dl>'
);
Expand All @@ -113,7 +111,7 @@ describe('only-dlitems', function() {
);
});

it('should return false if the list has dt, dd and a comment', function() {
it('should return false if the list has dt, dd and a comment', function () {
var checkArgs = checkSetup(
'<dl id="target"><dt>An item</dt><dd>A list</dd><!-- foo --></dl>'
);
Expand All @@ -125,7 +123,7 @@ describe('only-dlitems', function() {
);
});

it('should return true if the list has a dt and dd with other content', function() {
it('should return true if the list has a dt and dd with other content', function () {
var checkArgs = checkSetup(
'<dl id="target"><dt>Item one</dt><dd>Description</dd><p>Not a list</p></dl>'
);
Expand All @@ -138,7 +136,7 @@ describe('only-dlitems', function() {
assert.deepEqual(checkContext._relatedNodes, [fixture.querySelector('p')]);
});

it('should return true if the list has a textNode as a child', function() {
it('should return true if the list has a textNode as a child', function () {
var checkArgs = checkSetup(
'<dl id="target"><!--hi--><dt>hi</dt>hello<dd>hi</dd></dl>'
);
Expand All @@ -151,23 +149,19 @@ describe('only-dlitems', function() {
assert.deepEqual(checkContext._relatedNodes, []);
});

// This currently breaks in IE11
(isIE11 ? it.skip : it)(
'should return false if <link> is used along side dt',
function() {
var checkArgs = checkSetup(
'<dl id="target"><link rel="stylesheet" href="theme.css"><dt>A list</dt></dl>'
);
it('should return false if <link> is used along side dt', function () {
var checkArgs = checkSetup(
'<dl id="target"><link rel="stylesheet" href="theme.css"><dt>A list</dt></dl>'
);

assert.isFalse(
axe.testUtils
.getCheckEvaluate('only-dlitems')
.apply(checkContext, checkArgs)
);
}
);
assert.isFalse(
axe.testUtils
.getCheckEvaluate('only-dlitems')
.apply(checkContext, checkArgs)
);
});

it('should return false if <meta> is used along side dt', function() {
it('should return false if <meta> is used along side dt', function () {
var checkArgs = checkSetup(
'<dl id="target"><meta name="description" content=""><dt>A list</dt></dl>'
);
Expand All @@ -179,7 +173,7 @@ describe('only-dlitems', function() {
);
});

it('should return false if <script> is used along side dt', function() {
it('should return false if <script> is used along side dt', function () {
var checkArgs = checkSetup(
'<dl id="target"><script src="script.js"></script><dt>A list</dt></dl>'
);
Expand All @@ -191,7 +185,7 @@ describe('only-dlitems', function() {
);
});

it('should return false if <style> is used along side dt', function() {
it('should return false if <style> is used along side dt', function () {
var checkArgs = checkSetup(
'<dl id="target"><style></style><dt>A list</dt></dl>'
);
Expand All @@ -203,7 +197,7 @@ describe('only-dlitems', function() {
);
});

it('should return false if <template> is used along side dt', function() {
it('should return false if <template> is used along side dt', function () {
var checkArgs = checkSetup(
'<dl id="target"><template></template><dt>A list</dt></dl>'
);
Expand All @@ -215,7 +209,7 @@ describe('only-dlitems', function() {
);
});

it('should return false if the list has dt and dd inside a div group', function() {
it('should return false if the list has dt and dd inside a div group', function () {
var checkArgs = checkSetup(
'<dl id="target"><div><dt>An item</dt><dd>A list</dd></div></dl>'
);
Expand All @@ -226,7 +220,7 @@ describe('only-dlitems', function() {
);
});

it('should return true if the list has dt and dd inside a div group with a role', function() {
it('should return true if the list has dt and dd inside a div group with a role', function () {
var checkArgs = checkSetup(
'<dl id="target"><div role="listitem"><dt>An item</dt><dd>A list</dd></div></dl>'
);
Expand All @@ -237,7 +231,7 @@ describe('only-dlitems', function() {
);
});

it('should return true if the list mixed items inside a div group with a role', function() {
it('should return true if the list mixed items inside a div group with a role', function () {
var checkArgs = checkSetup(
'<dl id="target"><div><dt>An item</dt><dd>A list</dd><p>Not a list</p></div></dl>'
);
Expand All @@ -248,7 +242,7 @@ describe('only-dlitems', function() {
);
});

it('should return false if there is an empty div', function() {
it('should return false if there is an empty div', function () {
var checkArgs = checkSetup('<dl id="target"><div></div></dl>');
assert.isFalse(
axe.testUtils
Expand All @@ -257,7 +251,7 @@ describe('only-dlitems', function() {
);
});

it('returns false if there are display:none elements that normally would not be allowed', function() {
it('returns false if there are display:none elements that normally would not be allowed', function () {
var checkArgs = checkSetup(
'<dl id="target"> <dt>An item</dt> <dd>A list</dd> <h1 style="display:none">heading</h1> </dl>'
);
Expand All @@ -268,7 +262,7 @@ describe('only-dlitems', function() {
);
});

it('should return true if there is a div with text', function() {
it('should return true if there is a div with text', function () {
var checkArgs = checkSetup('<dl id="target"><div>text</div></dl>');
assert.isTrue(
axe.testUtils
Expand All @@ -277,7 +271,7 @@ describe('only-dlitems', function() {
);
});

it('returns false if there are visibility:hidden elements that normally would not be allowed', function() {
it('returns false if there are visibility:hidden elements that normally would not be allowed', function () {
var checkArgs = checkSetup(
'<dl id="target"> <dt>An item</dt> <dd>A list</dd> <h1 style="visibility:hidden">heading</h1> </dl>'
);
Expand All @@ -288,7 +282,7 @@ describe('only-dlitems', function() {
);
});

it('should return true if there is a div with non-dd / dt elements', function() {
it('should return true if there is a div with non-dd / dt elements', function () {
var checkArgs = checkSetup('<dl id="target"><div> <p>text</p> </div></dl>');
assert.isTrue(
axe.testUtils
Expand All @@ -297,7 +291,7 @@ describe('only-dlitems', function() {
);
});

it('returns false if there are aria-hidden=true elements that normally would not be allowed', function() {
it('returns false if there are aria-hidden=true elements that normally would not be allowed', function () {
var checkArgs = checkSetup(
'<dl id="target"> <dt>An item</dt> <dd>A list</dd> <h1 aria-hidden="true">heading</h1> </dl>'
);
Expand All @@ -308,7 +302,7 @@ describe('only-dlitems', function() {
);
});

it('returns true if there are aria-hidden=false elements that normally would not be allowed', function() {
it('returns true if there are aria-hidden=false elements that normally would not be allowed', function () {
var checkArgs = checkSetup(
'<dl id="target"> <dt>An item</dt> <dd>A list</dd> <h1 aria-hidden="false">heading</h1> </dl>'
);
Expand All @@ -321,7 +315,7 @@ describe('only-dlitems', function() {

(shadowSupport.v1 ? it : xit)(
'should return false in a shadow DOM pass',
function() {
function () {
var node = document.createElement('div');
node.innerHTML = '<dt>My list item </dt>';
var shadow = node.attachShadow({ mode: 'open' });
Expand All @@ -338,7 +332,7 @@ describe('only-dlitems', function() {

(shadowSupport.v1 ? it : xit)(
'should return true in a shadow DOM fail',
function() {
function () {
var node = document.createElement('div');
node.innerHTML = '<p>Not a list</p>';
var shadow = node.attachShadow({ mode: 'open' });
Expand Down
Loading

0 comments on commit 5bfac9d

Please sign in to comment.