Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Tentative: match new PR about 2E "unless the element is marked as presentational" #50002

Open
wants to merge 19 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
19 commits
Select commit Hold shift + click to select a range
43184ee
Acc test for input with acc name coming from label elements with role…
giacomo-petri Jan 9, 2025
8fdb651
Update comp_host_language_label.tentative.html
giacomo-petri Jan 9, 2025
28d3673
Update comp_host_language_label.tentative.html
giacomo-petri Jan 11, 2025
0af612d
Create role_none_conflict_resolution.tentative.html
giacomo-petri Jan 11, 2025
84dddad
Update comp_host_language_label.tentative.html
giacomo-petri Jan 13, 2025
828fd3c
Update role_none_conflict_resolution.tentative.html
giacomo-petri Jan 13, 2025
ba51332
Update comp_host_language_label.tentative.html
giacomo-petri Jan 15, 2025
6dff699
Update role_none_conflict_resolution.tentative.html
giacomo-petri Jan 15, 2025
03eb59d
Apply suggestions from code review
giacomo-petri Jan 17, 2025
ff3b093
Apply suggestions from code review
giacomo-petri Jan 17, 2025
a2cb698
Update role_none_conflict_resolution.tentative.html
giacomo-petri Jan 17, 2025
46f594d
Update comp_host_language_label.tentative.html
giacomo-petri Jan 17, 2025
ba37e50
Update comp_host_language_label.tentative.html
giacomo-petri Jan 17, 2025
3fa7dda
Update role_none_conflict_resolution.tentative.html
giacomo-petri Jan 17, 2025
c03918e
Update comp_host_language_label.tentative.html
giacomo-petri Jan 17, 2025
87d1daf
Update comp_host_language_label.tentative.html
giacomo-petri Jan 17, 2025
ca57c8f
Update comp_host_language_label.tentative.html
giacomo-petri Jan 21, 2025
9ee3cf6
updated all data-testname with valid CSS selectors and added expectat…
giacomo-petri Jan 31, 2025
d00b88f
removed elements with computed role of none
giacomo-petri Jan 31, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
72 changes: 72 additions & 0 deletions accname/name/comp_host_language_label.tentative.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
<!doctype html>
<html>
<head>
<title>Name Comp: Host Language Label</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/testdriver.js"></script>
<script src="/resources/testdriver-vendor.js"></script>
<script src="/resources/testdriver-actions.js"></script>
<script src="/wai-aria/scripts/aria-utils.js"></script>
</head>
<body>
<!-- Ambiguity coming from Host Language Label in accname specs (https://www.w3.org/TR/accname-1.2/#comp_host_language_label) - PR that tries to solve it https://github.com/w3c/aria/pull/2405 -->
<h2>HTML input with label with role none</h2>
<h3>HTML input label/for</h3>
<label role="none" for="lrp">input label</label>
<input id="lrp" type="text" data-expectedlabel="input label" data-testname="html: label[for][role=none]" class="ex-label">
<h3>HTML label encapsulation</h3>
<label role="none">
<span>input label</span>
<input type="text" data-expectedlabel="input label" data-testname="html: label[role=none] encapsulation" class="ex-label">
</label>

<!-- This test case is specifically designed to check the accessible name, but a separate test case has been created in wai-aria/role/role_none_conflict_resolution.tentative.html to check the role -->
<h2>HTML input with role="none" and label associated (presentational roles conflict resolution)</h2>
<h3>HTML input label/for</h3>
<label for="irn">input label</label>
<input id="irn" type="text" data-expectedlabel="input label" data-testname="html:label[for]+input[role=none] (role invalidated due to focusability)" class="ex-label" role="none">
<h3>HTML label encapsulation</h3>
<label>
<span>input label</span>
<input type="text" data-expectedlabel="input label" data-testname="html: label>input[role=none] (with label encapsulation, role invalidated due to focusability)" class="ex-label" role="none">
</label>

<h2>HTML input with role="none" and label with role none (presentational roles conflict resolution)</h2>
<h3>HTML input label/for</h3>
<label role="none" for="lirp">input label</label>
<input id="lirp" type="text" data-expectedlabel="input label" data-testname="html: label[for][role=none]+input[role=none] (role invalidated due to focusability)" class="ex-label" role="none">
<h3>HTML label encapsulation</h3>
<label role="none">
<span>input label</span>
<input type="text" data-expectedlabel="input label" data-testname="html: label[role=none]>input[role=none] (with label encapsulation, role invalidated due to focusability)" class="ex-label" role="none">
</label>

<h2>SVG wrapping title with role="none"</h2>
<svg viewBox="0 0 20 10" xmlns="http://www.w3.org/2000/svg">
<circle cx="5" cy="5" r="4" data-expectedlabel="circle" data-testname="svg: svg>circle>title[role=none] (role none set on title doesn't affect circle acc name)" class="ex-label">
<title role="none">circle</title>
</circle>
</svg>

<h2>HTML fieldset wrapping legend with role="none"</h2>
<fieldset data-expectedlabel="legend" data-testname="html: fieldset>legend[role=none] (role none set on legend doesn't affect fieldset acc name)" class="ex-label"><legend role="none">legend</legend></fieldset>

<h2>HTML table wrapping caption with role="none"</h2>
<table data-expectedlabel="caption" data-testname="html: table>caption[role=none] (role none set on caption doesn't affect table acc name)" class="ex-label">
<caption role="none">caption</caption>
<tr>
<th>th1</th>
<th>th2</th>
</tr>
<tr>
<td>td1</td>
<td>td2</td>
</tr>
</table>

<script>
AriaUtils.verifyLabelsBySelector(".ex-label");
</script>
</body>
</html>
38 changes: 38 additions & 0 deletions wai-aria/role/role_none_conflict_resolution.tentative.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
<!doctype html>
<html>
<head>
<title>Role None/Presentation Conflict Resolution Verification Tests</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/testdriver.js"></script>
<script src="/resources/testdriver-vendor.js"></script>
<script src="/resources/testdriver-actions.js"></script>
<script src="/wai-aria/scripts/aria-utils.js"></script>
</head>
<body>

<!-- This test case is specifically designed to check the role, but a separate test case has been created in accname/name/comp_host_language_label.tentative.html to check the acc name -->
<h2>HTML input with role="none" (presentational roles conflict resolution)</h2>
<label for="irn">input label</label>
<input id="irn" type="text" data-expectedrole="textbox" data-testname="HTML input[role=none] but focusable" class="ex-role" role="none">

<!-- This test case is specifically designed to check the role, but a separate test case has been created in accname/name/comp_host_language_label.tentative.html to check the acc name -->
<h2>HTML input with role="none" and disabled (presentational roles conflict resolution does not apply due to disabled attr)</h2>
<label for="irpd">input label</label>
<input id="irpd" type="text" data-testname="HTML input[role=none][disabled]" class="ex-generic" role="none" disabled>

<h2>HTML input with role="none" and readonly (presentational roles conflict resolution)</h2>
<label for="irnro">input label</label>
<input id="irnro" type="text" data-expectedrole="textbox" data-testname="HTML input[role=none][readonly] but focusable" class="ex-role" role="none" readonly>

<h2>HTML input with role="none", disabled and readonly (presentational roles conflict resolution does not apply due to disabled attr)</h2>
<label for="irpdro">input label</label>
<input id="irpdro" type="text" data-testname="HTML input[role=none][disabled][readonly]" class="ex-generic" role="none" disabled readonly>

giacomo-petri marked this conversation as resolved.
Show resolved Hide resolved
<script>
AriaUtils.verifyRolesBySelector(".ex-role");
AriaUtils.verifyGenericRolesBySelector(".ex-generic");
</script>

</body>
</html>