diff --git a/accessibility-checker-engine/src/v2/aria/ARIADefinitions.ts b/accessibility-checker-engine/src/v2/aria/ARIADefinitions.ts index c7e0b692b..7fdcc779d 100644 --- a/accessibility-checker-engine/src/v2/aria/ARIADefinitions.ts +++ b/accessibility-checker-engine/src/v2/aria/ARIADefinitions.ts @@ -2385,7 +2385,7 @@ export class ARIADefinitions { "checkbox-with-aria-pressed": { implicitRole: ["checkbox"], //roleCondition: " with type=checkbox and aria-pressed attribute is present", - validRoles: ["button"], + validRoles: ["menuitemcheckbox", "option", "switch", "button"], globalAriaAttributesValid: true, otherAllowedAriaAttributes: ["aria-required"], otherDisallowedAriaAttributes: ["aria-checked"] @@ -2715,132 +2715,137 @@ export class ARIADefinitions { ariaAttributeValue: string | null, htmlAttributeNames: string[], htmlAttributeValues: string[] | null - }, + }[], overlapping?: { ariaAttributeValue: string | null, htmlAttributeNames: string[], htmlAttributeValues: string[] | null - } + }[] } } = { "aria-checked": { - conflict: { + conflict: [{ ariaAttributeValue: "false", htmlAttributeNames: ["checked"], htmlAttributeValues: null - }, - overlapping: { + }], + overlapping: [{ ariaAttributeValue: "true", htmlAttributeNames: ["checked"], htmlAttributeValues: null - } + }] }, "aria-disabled": { - conflict: { + conflict: [{ ariaAttributeValue: "false", htmlAttributeNames: ["disabled"], htmlAttributeValues: null - }, - overlapping: { + }], + overlapping: [{ ariaAttributeValue: "true", htmlAttributeNames: ["disabled"], htmlAttributeValues: null - } + }] }, "aria-hidden": { - conflict: { + conflict: [{ ariaAttributeValue: "false", htmlAttributeNames: ["hidden"], - htmlAttributeValues: null + htmlAttributeValues: ["hidden,null"] }, - overlapping: { + { ariaAttributeValue: "true", htmlAttributeNames: ["hidden"], - htmlAttributeValues: null - } + htmlAttributeValues: ["until-found"] + }], + overlapping: [{ + ariaAttributeValue: "true", + htmlAttributeNames: ["hidden"], + htmlAttributeValues: ["hidden,null"] + }] }, "aria-placeholder": { - conflict: { + conflict: [{ ariaAttributeValue: null, htmlAttributeNames: ["placeholder"], htmlAttributeValues: null - } + }] }, "aria-valuemax": { - conflict: { + conflict: [{ ariaAttributeValue: null, htmlAttributeNames: ["max"], htmlAttributeValues: null - } + }] //overlap case covered in the role definition: Authors SHOULD NOT use aria-valuemax on any element which allows the max attribute. Use the max attribute instead. }, "aria-valuemin": { - conflict: { + conflict: [{ ariaAttributeValue: null, htmlAttributeNames: ["min"], htmlAttributeValues: null - } + }] ////overlap case covered in the role definition:Authors SHOULD NOT use aria-valuemin on any element which allows the min attribute. Use the min attribute instead. }, "aria-readonly": { - conflict: { + conflict: [{ ariaAttributeValue: "false", htmlAttributeNames: ["readonly", "contenteditable", "iscontenteditable"], htmlAttributeValues: [null, "false", "false"] - }, - overlapping: { + }], + overlapping: [{ ariaAttributeValue: "true", htmlAttributeNames: ["readonly", "contenteditable", "iscontenteditable"], htmlAttributeValues: [null, "true", "true"] - } + }] }, "aria-required": { - conflict: { + conflict: [{ ariaAttributeValue: "false", htmlAttributeNames: ["required"], htmlAttributeValues: null - }, - overlapping: { + }], + overlapping: [{ ariaAttributeValue: "true", htmlAttributeNames: ["required"], htmlAttributeValues: null - } + }] }, "aria-colspan": { - conflict: { + conflict: [{ // conflict occurs if both values are different ariaAttributeValue: "VALUE", htmlAttributeNames: ["colspan"], htmlAttributeValues: ["VALUE"] - }, - overlapping: { + }], + overlapping: [{ // overlap occurs if both exists ariaAttributeValue: null, htmlAttributeNames: ["colspan"], htmlAttributeValues: null - } + }] }, "aria-rowspan": { - conflict: { + conflict: [{ // conflict occurs if both values are different ariaAttributeValue: "VALUE", htmlAttributeNames: ["rowspan"], htmlAttributeValues: ["VALUE"] - }, - overlapping: { + }], + overlapping: [{ // overlap occurs if both exists ariaAttributeValue: null, htmlAttributeNames: ["rowspan"], htmlAttributeValues: null - } + }] }, "aria-autocomplete": { - conflict: { - // conflict occurs if both values are conflict - ariaAttributeValue: "none", + conflict: [{ + // conflict occurs if both exists, aria value is only for custom widget, rather than native + ariaAttributeValue: null, htmlAttributeNames: ["autocomplete"], - htmlAttributeValues: ["on"] - } + htmlAttributeValues: null + }] } } diff --git a/accessibility-checker-engine/src/v2/checker/accessibility/util/legacy.ts b/accessibility-checker-engine/src/v2/checker/accessibility/util/legacy.ts index 65196f24d..fbcdde064 100644 --- a/accessibility-checker-engine/src/v2/checker/accessibility/util/legacy.ts +++ b/accessibility-checker-engine/src/v2/checker/accessibility/util/legacy.ts @@ -3212,41 +3212,61 @@ export class RPTUtil { * or null where ariaAttr won't cause conflict */ public static getConflictOrOverlappingHtmlAttribute(ariaAttr, htmlAttrs, type): any[] | null { - let exist = ARIADefinitions.relatedAriaHtmlAttributes[ariaAttr['name']]; + let exist = ARIADefinitions.relatedAriaHtmlAttributes[ariaAttr['name']]; if (exist) { + if (!ariaAttr || ariaAttr.length ==0 || !htmlAttrs || htmlAttrs.length == 0) return []; + let examinedHtmlAtrNames = []; - let ariaAttrValue = ''; + let concernTypes = null; if (type === 'conflict') { - if (!exist.conflict) return null; - ariaAttrValue = exist.conflict.ariaAttributeValue; + if (!exist.conflict || Object.keys(exist.conflict).length === 0) return null; + concernTypes = exist.conflict; } else if (type === 'overlapping') { - if (!exist.overlapping) return null; - ariaAttrValue = exist.overlapping.ariaAttributeValue; + if (!exist.overlapping || Object.keys(exist.overlapping).length === 0) return null; + concernTypes = exist.overlapping; } else - return null; - if (ariaAttrValue === null || ariaAttrValue === 'VALUE' || ariaAttrValue === ariaAttr['value']) { - let htmlAttrNames = []; - let htmlAttrValues = []; - if (type === 'conflict') { - htmlAttrNames = exist.conflict.htmlAttributeNames; - htmlAttrValues = exist.conflict.htmlAttributeValues; - } else { - htmlAttrNames = exist.overlapping.htmlAttributeNames; - htmlAttrValues = exist.overlapping.htmlAttributeValues; - } + return null; + + let applicable = false; + let fail = false; + for (let k=0; k < concernTypes.length; k++) { + let concernAriaValue = concernTypes[k].ariaAttributeValue; + let concernHtmlNames = concernTypes[k].htmlAttributeNames; + let concernHtmlValues = concernTypes[k].htmlAttributeValues; + for (let i = 0; i < htmlAttrs.length; i++) { - let index = htmlAttrNames.indexOf(htmlAttrs[i]['name']); + let index = concernHtmlNames.indexOf(htmlAttrs[i]['name']); if (index !== -1) { - if (htmlAttrValues === null - || (ariaAttrValue === 'VALUE' && htmlAttrValues[index] === 'VALUE' && htmlAttrs[i]['value'] !== ariaAttr['value']) - || htmlAttrs[i]['value'] === htmlAttrValues[index]) { - examinedHtmlAtrNames.push({result: 'Failed', 'attr': htmlAttrs[i]['name']}); - continue; - } else - examinedHtmlAtrNames.push({result: 'Pass', 'attr': htmlAttrs[i]['name']}); - } - } + applicable = true; + let htmlValuesInConcern = (concernHtmlValues===null || concernHtmlValues[index]===null) ? null : concernHtmlValues[index].split(","); + + if (concernAriaValue === null) { + if (htmlValuesInConcern === null) { + examinedHtmlAtrNames.push({result: 'Failed', 'attr': htmlAttrs[i]['name']}); + fail = true; + } else if (htmlValuesInConcern.includes(htmlAttrs[i]['value'])) { + examinedHtmlAtrNames.push({result: 'Failed', 'attr': htmlAttrs[i]['name']}); + fail = true; + } + } else if (htmlValuesInConcern === null) { + if (concernAriaValue === ariaAttr['value']) { + examinedHtmlAtrNames.push({result: 'Failed', 'attr': htmlAttrs[i]['name']}); + fail = true; + } + } else if (concernAriaValue === 'VALUE' && htmlValuesInConcern.includes('VALUE') && htmlValuesInConcern[0] !== ariaAttr['value']) { + examinedHtmlAtrNames.push({result: 'Failed', 'attr': htmlAttrs[i]['name']}); + fail = true; + } else if (concernAriaValue === ariaAttr['value'] && htmlValuesInConcern.includes(htmlAttrs[i]['value'])) { + examinedHtmlAtrNames.push({result: 'Failed', 'attr': htmlAttrs[i]['name']}); + fail = true; + } + } + } } + + if (applicable && !fail) + examinedHtmlAtrNames.push({result: 'Pass', 'attr': ''}); + return examinedHtmlAtrNames; } else return null; diff --git a/accessibility-checker-engine/src/v4/rules/aria_attribute_conflict.ts b/accessibility-checker-engine/src/v4/rules/aria_attribute_conflict.ts index 35357b9d8..38a67811b 100644 --- a/accessibility-checker-engine/src/v4/rules/aria_attribute_conflict.ts +++ b/accessibility-checker-engine/src/v4/rules/aria_attribute_conflict.ts @@ -30,7 +30,7 @@ export let aria_attribute_conflict: Rule = { }, messages: { "en-US": { - "pass": "Rule Passed", + "pass": "The ARIA attribute is not conflict with the corresponding HTML attribute", "fail_conflict": "The ARIA attribute \"{0}\" is in conflict with the corresponding HTML attribute \"{1}\"", "group": "An ARIA attribute must not conflict with the corresponding HTML attribute" } @@ -62,8 +62,8 @@ export let aria_attribute_conflict: Rule = { RPTUtil.reduceArrayItemList([conflictAttributes[i]['ariaAttr']], ariaAttributes); } - for (let i = 0; i < ariaAttributes.length; i++) - ret.push(RulePass("pass")); + //for (let i = 0; i < ariaAttributes.length; i++) + // ret.push(RulePass("pass")); if (ret.length > 0) return ret; diff --git a/accessibility-checker-engine/src/v4/rules/aria_attribute_redundant.ts b/accessibility-checker-engine/src/v4/rules/aria_attribute_redundant.ts index cdf575dc9..cfd8ca0d3 100644 --- a/accessibility-checker-engine/src/v4/rules/aria_attribute_redundant.ts +++ b/accessibility-checker-engine/src/v4/rules/aria_attribute_redundant.ts @@ -11,10 +11,9 @@ limitations under the License. *****************************************************************************/ -import { Rule, RuleResult, RuleFail, RuleContext, RulePass, RuleContextHierarchy, RulePotential } from "../api/IRule"; +import { Rule, RuleResult, RuleFail, RuleContext, RulePass, RuleContextHierarchy } from "../api/IRule"; import { eRulePolicy, eToolkitLevel } from "../api/IRule"; import { RPTUtil } from "../../v2/checker/accessibility/util/legacy"; -import { getCache } from "../util/CacheUtil"; import { getInvalidAriaAttributes, getConflictAriaAndHtmlAttributes } from "../util/CommonUtil"; export let aria_attribute_redundant: Rule = { @@ -31,9 +30,9 @@ export let aria_attribute_redundant: Rule = { }, messages: { "en-US": { - "pass": "Rule Passed", + "pass": "The ARIA attribute is not redundant with a corresponding HTML attribute", "fail_redundant": "The ARIA attribute \"{0}\" is redundant with the HTML attribute \"{1}\"", - "group": "An ARIA attribute should not be used when there is a corresponding HTML attribute" + "group": "An ARIA attribute should not be redundant with a corresponding HTML attribute" } }, rulesets: [{ diff --git a/accessibility-checker-engine/src/v4/rules/aria_attribute_required.ts b/accessibility-checker-engine/src/v4/rules/aria_attribute_required.ts index 8a29dc36a..fd3fec72e 100644 --- a/accessibility-checker-engine/src/v4/rules/aria_attribute_required.ts +++ b/accessibility-checker-engine/src/v4/rules/aria_attribute_required.ts @@ -12,9 +12,8 @@ *****************************************************************************/ import { ARIADefinitions } from "../../v2/aria/ARIADefinitions"; -import { ARIAMapper } from "../../v2/aria/ARIAMapper"; import { RPTUtil } from "../../v2/checker/accessibility/util/legacy"; -import { Rule, RuleResult, RuleFail, RuleContext, RulePotential, RuleManual, RulePass, RuleContextHierarchy } from "../api/IRule"; +import { Rule, RuleResult, RuleFail, RuleContext, RulePass, RuleContextHierarchy } from "../api/IRule"; import { eRulePolicy, eToolkitLevel } from "../api/IRule"; export let aria_attribute_required: Rule = { @@ -23,22 +22,22 @@ export let aria_attribute_required: Rule = { dependencies: ["aria_role_allowed"], refactor: { "Rpt_Aria_RequiredProperties": { - "Pass_0": "Pass_0", - "Fail_1": "Fail_1" + "Pass_0": "pass", + "Fail_1": "fail_missing" } }, help: { "en-US": { "group": `aria_attribute_required.html`, - "Pass_0": `aria_attribute_required.html`, - "Fail_1": `aria_attribute_required.html` + "pass": `aria_attribute_required.html`, + "fail_missing": `aria_attribute_required.html` } }, messages: { "en-US": { - "group": "When using an ARIA role on an element, the required attributes for that role must be defined", - "Pass_0": "Rule Passed", - "Fail_1": "An element with ARIA role '{0}' does not have the required ARIA attribute(s): '{1}'" + "group": "The required attributes for the element with a role must be defined", + "pass": "The required attributes for the element with the role are defined", + "fail_missing": "An element with ARIA role '{0}' does not have the required ARIA attribute(s): '{1}'" } }, rulesets: [{ @@ -59,13 +58,16 @@ export let aria_attribute_required: Rule = { let hasAttribute = RPTUtil.hasAttribute; let testedRoles = 0; + let tagProperty = RPTUtil.getElementAriaProperty(ruleContext); for (let j = 0, rolesLength = roles.length; j < rolesLength; ++j) { if (implicitRole.length > 0 && implicitRole.includes(roles[j])) continue; if (designPatterns[roles[j]] && RPTUtil.getRoleRequiredProperties(roles[j], ruleContext) != null) { let requiredRoleProps = RPTUtil.getRoleRequiredProperties(roles[j], ruleContext); + let allowedRoleProps = RPTUtil.getAllowedAriaAttributes(ruleContext, roles[j], tagProperty); let roleMissingReqProp = false; testedRoles++; for (let i = 0, propertiesLength = requiredRoleProps.length; i < propertiesLength; i++) { + if (!allowedRoleProps.includes(requiredRoleProps[i])) continue; if (!hasAttribute(ruleContext, requiredRoleProps[i])) { // If an aria-labelledby isn't present, an aria-label will meet the requirement. if (requiredRoleProps[i] == "aria-labelledby") { @@ -99,9 +101,9 @@ export let aria_attribute_required: Rule = { if (testedRoles === 0) { return null; } else if (!passed) { - return RuleFail("Fail_1", retToken); + return RuleFail("fail_missing", retToken); } else { - return RulePass("Pass_0"); + return RulePass("pass"); } } } diff --git a/accessibility-checker-engine/src/v4/rules/index.ts b/accessibility-checker-engine/src/v4/rules/index.ts index d9058a3d3..ddfd67fb0 100644 --- a/accessibility-checker-engine/src/v4/rules/index.ts +++ b/accessibility-checker-engine/src/v4/rules/index.ts @@ -166,6 +166,7 @@ export * from "./style_focus_visible" export * from "./style_highcontrast_visible" export * from "./style_hover_persistent" export * from "./style_viewport_resizable" +export * from "./svg_graphics_labelled" export * from "./table_aria_descendants" export * from "./table_caption_empty" export * from "./table_caption_nested" diff --git a/accessibility-checker-engine/src/v4/rules/label_ref_valid.ts b/accessibility-checker-engine/src/v4/rules/label_ref_valid.ts index 97fb6fa23..9e1a5b81f 100644 --- a/accessibility-checker-engine/src/v4/rules/label_ref_valid.ts +++ b/accessibility-checker-engine/src/v4/rules/label_ref_valid.ts @@ -11,7 +11,7 @@ limitations under the License. *****************************************************************************/ -import { Rule, RuleResult, RuleFail, RuleContext, RulePotential, RuleManual, RulePass, RuleContextHierarchy } from "../api/IRule"; +import { Rule, RuleResult, RuleFail, RuleContext, RulePass, RuleContextHierarchy } from "../api/IRule"; import { eRulePolicy, eToolkitLevel } from "../api/IRule"; import { FragmentUtil } from "../../v2/checker/accessibility/util/fragment"; import { VisUtil } from "../../v2/dom/VisUtil"; @@ -21,21 +21,21 @@ export let label_ref_valid: Rule = { context: "dom:label[for]", refactor: { "WCAG20_Label_RefValid": { - "Pass_0": "Pass_0", - "Fail_1": "Fail_1"} + "Pass_0": "pass", + "Fail_1": "fail_invalid"} }, help: { "en-US": { - "Pass_0": "label_ref_valid.html", - "Fail_1": "label_ref_valid.html", + "pass": "label_ref_valid.html", + "fail_invalid": "label_ref_valid.html", "group": "label_ref_valid.html" } }, messages: { "en-US": { - "Pass_0": "Rule Passed", - "Fail_1": "The value \"{0}\" of the 'for' attribute is not the 'id' of a valid element", - "group": "The 'for' attribute must reference a non-empty, unique 'id' attribute of an element" + "pass": "The 'for' attribute for a label referencea a unique non-empty 'id' attribute of an element", + "fail_invalid": "The value \"{0}\" of the 'for' attribute is not the 'id' of a valid element", + "group": "The 'for' attribute for a label must reference a non-empty, unique 'id' attribute of an element" } }, rulesets: [{ @@ -73,7 +73,7 @@ export let label_ref_valid: Rule = { type == "hidden" || type == "search" || type == "tel" || type == "url" || type == "email" || //HTML 5 type == "date" || type == "number" || type == "range" || type == "image" || //HTML 5 type == "time" || type == "color" || // HTML 5 - type == "datetime" || type == "month" || type == "week"; //HTML5.1 + type == "datetime-local" || type == "month" || type == "week"; //HTML5.1 } } @@ -89,9 +89,9 @@ export let label_ref_valid: Rule = { } //return new ValidationResult(passed, [ruleContext], '', '', passed == true ? [] : [retToken]); if (!passed) { - return RuleFail("Fail_1", retToken); + return RuleFail("fail_invalid", retToken); } else { - return RulePass("Pass_0"); + return RulePass("pass"); } } } \ No newline at end of file diff --git a/accessibility-checker-engine/src/v4/util/CommonUtil.ts b/accessibility-checker-engine/src/v4/util/CommonUtil.ts index b5495f2a2..c60241ff8 100644 --- a/accessibility-checker-engine/src/v4/util/CommonUtil.ts +++ b/accessibility-checker-engine/src/v4/util/CommonUtil.ts @@ -142,7 +142,7 @@ export function getConflictAriaAndHtmlAttributes(elem: Element) { examinedHtmlAtrNames.forEach(item => { if (item['result'] === 'Failed') //failed ret.push({'ariaAttr': ariaAttrs[i]['name'], 'htmlAttr': item['attr']}); - }); + }); } } return ret; diff --git a/accessibility-checker-engine/test/v2/checker/accessibility/rules/aria_attribute_conflict_ruleunit/aria-hidden.html b/accessibility-checker-engine/test/v2/checker/accessibility/rules/aria_attribute_conflict_ruleunit/aria-hidden.html new file mode 100755 index 000000000..b4047e21d --- /dev/null +++ b/accessibility-checker-engine/test/v2/checker/accessibility/rules/aria_attribute_conflict_ruleunit/aria-hidden.html @@ -0,0 +1,81 @@ + + + + + + +Either HTML 5 attributes or Aria attributes + + + + + + + + + + + + + + + + + diff --git a/accessibility-checker-engine/test/v2/checker/accessibility/rules/aria_attribute_required_ruleunit/input_checkbox.html b/accessibility-checker-engine/test/v2/checker/accessibility/rules/aria_attribute_required_ruleunit/input_checkbox.html new file mode 100644 index 000000000..b6906176e --- /dev/null +++ b/accessibility-checker-engine/test/v2/checker/accessibility/rules/aria_attribute_required_ruleunit/input_checkbox.html @@ -0,0 +1,104 @@ + + + + + + + + RPT Test Suite + + + + + skip to main content + + + +

WAI-ARIA role valid attribute test

+ +
+ + + + + + + + + + + diff --git a/accessibility-checker-engine/test/v2/checker/accessibility/rules/aria_attribute_required_ruleunit/separator.html b/accessibility-checker-engine/test/v2/checker/accessibility/rules/aria_attribute_required_ruleunit/separator.html index 00a2fdfdf..3651a14e5 100644 --- a/accessibility-checker-engine/test/v2/checker/accessibility/rules/aria_attribute_required_ruleunit/separator.html +++ b/accessibility-checker-engine/test/v2/checker/accessibility/rules/aria_attribute_required_ruleunit/separator.html @@ -65,8 +65,8 @@

WAI-ARIA role valid attribute test

"dom": "/html[1]/body[1]/div[1]", "aria": "/document[1]/application[1]" }, - "reasonId": "Pass_0", - "message": "Rule Passed", + "reasonId": "pass", + "message": "The required attributes for the element with the role are defined", "messageArgs": [], "apiArgs": [], "category": "Accessibility" @@ -81,9 +81,12 @@

WAI-ARIA role valid attribute test

"dom": "/html[1]/body[1]/div[2]", "aria": "/document[1]/separator[3]" }, - "reasonId": "Fail_1", + "reasonId": "fail_missing", "message": "An element with ARIA role 'separator' does not have the required ARIA attribute(s): 'aria-valuenow'", - "messageArgs": ["separator", "aria-valuenow"], + "messageArgs": [ + "separator", + "aria-valuenow" + ], "apiArgs": [], "category": "Accessibility" } diff --git a/accessibility-checker-engine/test/v2/checker/accessibility/rules/input_label_exists_ruleunit/input-datetime.html b/accessibility-checker-engine/test/v2/checker/accessibility/rules/input_label_exists_ruleunit/input-datetime.html new file mode 100755 index 000000000..225a76b55 --- /dev/null +++ b/accessibility-checker-engine/test/v2/checker/accessibility/rules/input_label_exists_ruleunit/input-datetime.html @@ -0,0 +1,132 @@ + + + + + + + + RPT Test Suite + + + + +skip to main content + + + + + + + + +

Input type Tests

+ + + +
+ + +
+ Legend text:datetime + + + + + +
+
+ +End + + + + + diff --git a/accessibility-checker-engine/test/v2/checker/accessibility/rules/label_ref_valid_ruleunit/Label-shadow.html b/accessibility-checker-engine/test/v2/checker/accessibility/rules/label_ref_valid_ruleunit/Label-shadow.html index 86ada1a04..b69e9dfe6 100755 --- a/accessibility-checker-engine/test/v2/checker/accessibility/rules/label_ref_valid_ruleunit/Label-shadow.html +++ b/accessibility-checker-engine/test/v2/checker/accessibility/rules/label_ref_valid_ruleunit/Label-shadow.html @@ -60,8 +60,8 @@ "dom": "/html[1]/body[1]/main[1]/div[1]/#document-fragment[1]/div[1]/label[1]", "aria": "/document[1]/main[1]" }, - "reasonId": "Pass_0", - "message": "Rule Passed", + "reasonId": "pass", + "message": "The 'for' attribute for a label referencea a unique non-empty 'id' attribute of an element", "messageArgs": [], "apiArgs": [], "category": "Accessibility" diff --git a/accessibility-checker-engine/test/v2/checker/accessibility/rules/label_ref_valid_ruleunit/switch_datetime_month_week.html b/accessibility-checker-engine/test/v2/checker/accessibility/rules/label_ref_valid_ruleunit/switch_datetime_month_week.html index f2de7a787..c5f510455 100644 --- a/accessibility-checker-engine/test/v2/checker/accessibility/rules/label_ref_valid_ruleunit/switch_datetime_month_week.html +++ b/accessibility-checker-engine/test/v2/checker/accessibility/rules/label_ref_valid_ruleunit/switch_datetime_month_week.html @@ -42,7 +42,7 @@

Switch role and input type datetime, month, week addition


-
+


diff --git a/accessibility-checker/test/mocha/aChecker.Fast/aChecker.Scans/aChecker.Content.Puppeteer.test.js b/accessibility-checker/test/mocha/aChecker.Fast/aChecker.Scans/aChecker.Content.Puppeteer.test.js index e083cc2a8..8de6d3187 100644 --- a/accessibility-checker/test/mocha/aChecker.Fast/aChecker.Scans/aChecker.Content.Puppeteer.test.js +++ b/accessibility-checker/test/mocha/aChecker.Fast/aChecker.Scans/aChecker.Content.Puppeteer.test.js @@ -117,7 +117,9 @@ var skipList = [ // Blank titles are removed from the DOM path.join(process.cwd(), "..", "accessibility-checker-engine", "test", "v2", "checker", "accessibility", "rules", "page_title_valid_ruleunit","Title-empty.html"), path.join(process.cwd(), "..", "accessibility-checker-engine", "test", "v2", "checker", "accessibility", "rules", "page_title_valid_ruleunit","Title-invalidSpaces.html"), - + + // TODO: temprarily ignore till the issue is resolved: https://github.com/IBMa/equal-access/issues/1932 + path.join(process.cwd(), "..", "accessibility-checker-engine", "test", "v2", "checker", "accessibility", "rules", "aria_attribute_conflict_ruleunit","aria-hidden.html"), ] var skipMap = {} diff --git a/accessibility-checker/test/mocha/aChecker.Fast/aChecker.Scans/aChecker.Content.test.js b/accessibility-checker/test/mocha/aChecker.Fast/aChecker.Scans/aChecker.Content.test.js index 4692bd2f1..86147e1e8 100644 --- a/accessibility-checker/test/mocha/aChecker.Fast/aChecker.Scans/aChecker.Content.test.js +++ b/accessibility-checker/test/mocha/aChecker.Fast/aChecker.Scans/aChecker.Content.test.js @@ -103,8 +103,10 @@ var skipList = [ path.join(testRoot, "page_title_valid_ruleunit","Title-empty.html"), path.join(testRoot, "page_title_valid_ruleunit", "Title-invalidSpaces.html"), path.join(testRoot, "style_color_misuse_ruleunit", "D543.html"), - path.join(testRoot, "style_before_after_review_ruleunit", "D100.html") + path.join(testRoot, "style_before_after_review_ruleunit", "D100.html"), + // TODO: temprarily ignore till the issue is resolved: https://github.com/IBMa/equal-access/issues/1932 + path.join(testRoot, "aria_attribute_conflict_ruleunit","aria-hidden.html") ] var skipMap = {} diff --git a/accessibility-checker/test/mocha/aChecker.Fast/aChecker.Scans/aChecker.URL.test.js b/accessibility-checker/test/mocha/aChecker.Fast/aChecker.Scans/aChecker.URL.test.js index 43d5e5c43..1936812ef 100644 --- a/accessibility-checker/test/mocha/aChecker.Fast/aChecker.Scans/aChecker.URL.test.js +++ b/accessibility-checker/test/mocha/aChecker.Fast/aChecker.Scans/aChecker.URL.test.js @@ -106,6 +106,9 @@ var skipList = [ // CSS linkage via data URL issues path.join(process.cwd(), "..", "accessibility-checker-engine", "test", "v2", "checker", "accessibility", "rules", "style_color_misuse_ruleunit","D543.html"), path.join(process.cwd(), "..", "accessibility-checker-engine", "test", "v2", "checker", "accessibility", "rules", "style_before_after_review_ruleunit","D100.html"), + + // TODO: temprarily ignore till the issue is resolved: https://github.com/IBMa/equal-access/issues/1932 + path.join(process.cwd(), "..", "accessibility-checker-engine", "test", "v2", "checker", "accessibility", "rules", "aria_attribute_conflict_ruleunit","aria-hidden.html") ] var skipMap = {}