Skip to content

Commit 84ec374

Browse files
committed
Include exclude tags for accessibility
1 parent 3542abe commit 84ec374

File tree

3 files changed

+19
-17
lines changed

3 files changed

+19
-17
lines changed

bin/accessibility-automation/cypress/index.js

Lines changed: 14 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -30,21 +30,20 @@ Cypress.on('test:after:run', (attributes, runnable) => {
3030
if (isHeaded && extensionPath !== undefined) {
3131

3232
let shouldScanTestForAccessibility = true;
33-
// if (process.env.BROWSERSTACK_TEST_ACCESSIBILITY_CONFIGURATION_YML) {
34-
// try {
35-
// const accessibilityConfig = JSON.parse(process.env.BROWSERSTACK_TEST_ACCESSIBILITY_CONFIGURATION_YML);
36-
37-
// const includeTags = Array.isArray(accessibilityConfig.includeTagsInTestingScope) ? accessibilityConfig.includeTagsInTestingScope : [];
38-
// const excludeTags = Array.isArray(accessibilityConfig.excludeTagsInTestingScope) ? accessibilityConfig.excludeTagsInTestingScope : [];
39-
40-
// const fullTestName = attributes.title;
41-
// const excluded = excludeTags.some((exclude) => fullTestName.includes(exclude));
42-
// const included = includeTags.length === 0 || includeTags.some((include) => fullTestName.includes(include));
43-
// shouldScanTestForAccessibility = !excluded && included;
44-
// } catch (error){
45-
// console.log("Error while validating test case for accessibility before scanning. Error : ", error);
46-
// }
47-
// }
33+
if (Cypress.env("INCLUDE_TAGS_FOR_ACCESSIBILITY") || Cypress.env("EXCLUDE_TAGS_FOR_ACCESSIBILITY")) {
34+
35+
try {
36+
let includeTagArray = Cypress.env("INCLUDE_TAGS_FOR_ACCESSIBILITY").split(";")
37+
let excludeTagArray = Cypress.env("EXCLUDE_TAGS_FOR_ACCESSIBILITY").split(";")
38+
39+
const fullTestName = attributes.title;
40+
const excluded = excludeTagArray.some((exclude) => fullTestName.includes(exclude));
41+
const included = includeTagArray.length === 0 || includeTags.some((include) => fullTestName.includes(include));
42+
shouldScanTestForAccessibility = !excluded && included;
43+
} catch (error){
44+
console.log("Error while validating test case for accessibility before scanning. Error : ", error);
45+
}
46+
}
4847
const dataForExtension = {
4948
"saveResults": shouldScanTestForAccessibility,
5049
"testDetails": {

bin/accessibility-automation/plugin/index.js

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,10 @@ const browserstackAccessibility = (on, config) => {
4343
config.env.ACCESSIBILITY_EXTENSION_PATH = process.env.ACCESSIBILITY_EXTENSION_PATH
4444
config.env.OS_VERSION = process.env.OS_VERSION
4545
config.env.IS_ACCESSIBILITY_EXTENSION_LOADED = browser_validation.toString()
46-
config.env.ACCESSIBILITY_VAL_2 = "1234567"
46+
47+
config.env.INCLUDE_TAGS_FOR_ACCESSIBILITY = process.env.ACCESSIBILITY_INCLUDETAGSINTESTINGSCOPE
48+
config.env.EXCLUDE_TAGS_FOR_ACCESSIBILITY = process.env.ACCESSIBILITY_EXCLUDETAGSINTESTINGSCOPE
49+
4750
return config;
4851
}
4952

bin/helpers/utils.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -562,7 +562,7 @@ exports.setSystemEnvs = (bsConfig) => {
562562
const accessibilityOptions = bsConfig.run_settings.accessibilityOptions
563563
Object.keys(accessibilityOptions).forEach(key => {
564564
const a11y_env_key = `ACCESSIBILITY_${key.toUpperCase()}`
565-
if (key === "includeTagsInTestingScope")
565+
if (["includeTagsInTestingScope", "excludeTagsInTestingScope"].includes(key))
566566
envKeys[a11y_env_key] = accessibilityOptions[key].join(";")
567567
else if (key === "includeIssueType")
568568
envKeys[a11y_env_key] = JSON.stringify(accessibilityOptions.includeIssueType).replaceAll('"', "")

0 commit comments

Comments
 (0)