Skip to content

Commit c8476b4

Browse files
Liviu RauDevtools-frontend LUCI CQ
authored andcommitted
Migrate test/e2e/issues/select-element-accessibility-issues_test.ts
Fixed: 416405468 Change-Id: I022119c4cc0a6841001ff0d7a800cafe25df4401 Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6727254 Auto-Submit: Liviu Rau <[email protected]> Reviewed-by: Alex Rudenko <[email protected]> Commit-Queue: Liviu Rau <[email protected]> Commit-Queue: Alex Rudenko <[email protected]>
1 parent f9daaf8 commit c8476b4

File tree

5 files changed

+133
-118
lines changed

5 files changed

+133
-118
lines changed

test/e2e/helpers/issues-helpers.ts

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ import type * as puppeteer from 'puppeteer-core';
77

88
import type {DevToolsPage} from '../../e2e_non_hosted/shared/frontend-helper.js';
99
import {
10-
clickElement,
1110
matchStringTable,
1211
waitFor,
1312
} from '../../shared/helper.js';
@@ -125,8 +124,8 @@ export async function getAndExpandSpecificIssueByTitle(
125124
}
126125
return undefined;
127126
});
128-
await clickElement(issueMessageElement);
129-
await waitFor('.message');
127+
await devToolsPage.clickElement(issueMessageElement);
128+
await devToolsPage.waitFor('.message');
130129
return await getIssueByTitleElement(issueMessageElement);
131130
}
132131

test/e2e/issues/BUILD.gn

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@ node_ts_library("issues") {
1212
"partitioning-blob-url-issues_test.ts",
1313
"quota-issues_test.ts",
1414
"sab-issues_test.ts",
15-
"select-element-accessibility-issues_test.ts",
1615
"user-reidentification-issues_test.ts",
1716
]
1817

test/e2e/issues/select-element-accessibility-issues_test.ts

Lines changed: 0 additions & 114 deletions
This file was deleted.

test/e2e_non_hosted/issues/BUILD.gn

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ ts_e2e_library("issues") {
2424
"privacy-sandbox-extensions-api_test.ts",
2525
"quirks-mode-issues_test.ts",
2626
"report-only_test.ts",
27+
"select-element-accessibility-issues_test.ts",
2728
]
2829
deps = [
2930
"../../e2e/helpers",
Lines changed: 130 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,130 @@
1+
// Copyright 2025 The Chromium Authors. All rights reserved.
2+
// Use of this source code is governed by a BSD-style license that can be
3+
// found in the LICENSE file.
4+
5+
import {
6+
ensureResourceSectionIsExpanded,
7+
getAndExpandSpecificIssueByTitle,
8+
getResourcesElement,
9+
navigateToIssuesTab,
10+
waitForTableFromResourceSectionContents,
11+
} from '../../e2e/helpers/issues-helpers.js';
12+
import {
13+
assertNotNullOrUndefined,
14+
} from '../../shared/helper.js';
15+
16+
describe('Select element accessibility issues test', () => {
17+
it('should display issue when there is a disallowed child of a select element',
18+
async ({devToolsPage, inspectedPage}) => {
19+
await inspectedPage.goToResource('issues/select-element-accessibility-issue-DisallowedSelectChild.html');
20+
await navigateToIssuesTab(devToolsPage);
21+
const issueElement =
22+
await getAndExpandSpecificIssueByTitle('Invalid element or text node within <select>', devToolsPage);
23+
assertNotNullOrUndefined(issueElement);
24+
25+
const section = await getResourcesElement('1 element', issueElement, undefined, devToolsPage);
26+
await ensureResourceSectionIsExpanded(section, devToolsPage);
27+
const expectedTableRows = [
28+
['Disallowed descendant'],
29+
];
30+
await waitForTableFromResourceSectionContents(section.content, expectedTableRows, devToolsPage);
31+
});
32+
33+
it('should display issue when there is a disallowed child of an optgroup element',
34+
async ({devToolsPage, inspectedPage}) => {
35+
await inspectedPage.goToResource('issues/select-element-accessibility-issue-DisallowedOptGroupChild.html');
36+
await navigateToIssuesTab(devToolsPage);
37+
const issueElement =
38+
await getAndExpandSpecificIssueByTitle('Invalid element or text node within <optgroup>', devToolsPage);
39+
assertNotNullOrUndefined(issueElement);
40+
41+
const section = await getResourcesElement('1 element', issueElement, undefined, devToolsPage);
42+
await ensureResourceSectionIsExpanded(section, devToolsPage);
43+
const expectedTableRows = [
44+
['Disallowed descendant'],
45+
];
46+
await waitForTableFromResourceSectionContents(section.content, expectedTableRows, devToolsPage);
47+
});
48+
49+
it('should display issue when there is a non-phrasing child element of an option element',
50+
async ({devToolsPage, inspectedPage}) => {
51+
await inspectedPage.goToResource('issues/select-element-accessibility-issue-NonPhrasingContentOptionChild.html');
52+
await navigateToIssuesTab(devToolsPage);
53+
const issueElement =
54+
await getAndExpandSpecificIssueByTitle('Non-phrasing content used within an <option> element', devToolsPage);
55+
assertNotNullOrUndefined(issueElement);
56+
57+
const section = await getResourcesElement('1 element', issueElement, undefined, devToolsPage);
58+
await ensureResourceSectionIsExpanded(section, devToolsPage);
59+
const expectedTableRows = [
60+
['Disallowed descendant'],
61+
];
62+
await waitForTableFromResourceSectionContents(section.content, expectedTableRows, devToolsPage);
63+
});
64+
65+
it('should display issue when there is an interactive child element of an option element',
66+
async ({devToolsPage, inspectedPage}) => {
67+
await inspectedPage.goToResource('issues/select-element-accessibility-issue-InteractiveContentOptionChild.html');
68+
await navigateToIssuesTab(devToolsPage);
69+
const issueElement =
70+
await getAndExpandSpecificIssueByTitle('Interactive element inside of an <option> element', devToolsPage);
71+
assertNotNullOrUndefined(issueElement);
72+
73+
const section = await getResourcesElement('1 element', issueElement, undefined, devToolsPage);
74+
await ensureResourceSectionIsExpanded(section, devToolsPage);
75+
const expectedTableRows = [
76+
['Disallowed descendant'],
77+
];
78+
await waitForTableFromResourceSectionContents(section.content, expectedTableRows, devToolsPage);
79+
});
80+
81+
it('should display issue when there is an interactive child element of a legend element',
82+
async ({devToolsPage, inspectedPage}) => {
83+
await inspectedPage.goToResource('issues/select-element-accessibility-issue-InteractiveContentLegendChild.html');
84+
await navigateToIssuesTab(devToolsPage);
85+
const issueElement =
86+
await getAndExpandSpecificIssueByTitle('Interactive element inside of a <legend> element', devToolsPage);
87+
assertNotNullOrUndefined(issueElement);
88+
89+
const section = await getResourcesElement('1 element', issueElement, undefined, devToolsPage);
90+
await ensureResourceSectionIsExpanded(section, devToolsPage);
91+
const expectedTableRows = [
92+
['Disallowed descendant'],
93+
];
94+
await waitForTableFromResourceSectionContents(section.content, expectedTableRows, devToolsPage);
95+
});
96+
97+
it('should display issue when there is an element with disallowed attributes as a child of a select element',
98+
async ({devToolsPage, inspectedPage}) => {
99+
await inspectedPage.goToResource(
100+
'issues/select-element-accessibility-issue-InteractiveAttributesSelectDescendant.html');
101+
await navigateToIssuesTab(devToolsPage);
102+
const issueElement = await getAndExpandSpecificIssueByTitle(
103+
'Element with invalid attributes within a <select> element', devToolsPage);
104+
assertNotNullOrUndefined(issueElement);
105+
106+
const section = await getResourcesElement('1 element', issueElement, undefined, devToolsPage);
107+
await ensureResourceSectionIsExpanded(section, devToolsPage);
108+
const expectedTableRows = [
109+
['Disallowed descendant'],
110+
];
111+
await waitForTableFromResourceSectionContents(section.content, expectedTableRows, devToolsPage);
112+
});
113+
114+
it('should display issue when there is an interactive element as a descendant of a summary element',
115+
async ({devToolsPage, inspectedPage}) => {
116+
await inspectedPage.goToResource(
117+
'issues/summary-element-accessibility-issue-InteractiveContentSummaryDescendant.html');
118+
await navigateToIssuesTab(devToolsPage);
119+
const issueElement =
120+
await getAndExpandSpecificIssueByTitle('Interactive element inside of a <summary> element', devToolsPage);
121+
assertNotNullOrUndefined(issueElement);
122+
123+
const section = await getResourcesElement('1 element', issueElement, undefined, devToolsPage);
124+
await ensureResourceSectionIsExpanded(section, devToolsPage);
125+
const expectedTableRows = [
126+
['Disallowed descendant'],
127+
];
128+
await waitForTableFromResourceSectionContents(section.content, expectedTableRows, devToolsPage);
129+
});
130+
});

0 commit comments

Comments
 (0)