mirror of
https://github.com/priyanshujain/sanderling.git
synced 2026-10-04 03:57:09 +00:00
test(browser): tap a role-based control end to end
every control on the page is an <li role="option">, the shape the replay ui gives its step rows, and the spec carries no action of its own: the property firing is the evidence the default enumeration offered a tap on one.
This commit is contained in:
1 parent
a460eba3db
commit
f3096d195b
3 files changed
+57
No files matched your search
@@ -65,6 +65,18 @@ func TestBrowserShadowDOMIsReachable(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
// TestBrowserAriaRoleIsTappable drives a page whose only controls are
|
||||
// <li role="option"> rows, the shape the replay UI gives its step list. The
|
||||
// tappable set covered role="button" and nothing else, so a spec had to
|
||||
// hand-write an action to reach a row; with the standard interactive roles
|
||||
// covered, the default tap enumeration finds them and the counter moves.
|
||||
func TestBrowserAriaRoleIsTappable(t *testing.T) {
|
||||
violations := runFixture(t, "aria-roles")
|
||||
if !slices.Contains(violations, "noRowWasEverSelected") {
|
||||
t.Fatalf("no role=\"option\" row was ever tapped; violations=%v", violations)
|
||||
}
|
||||
}
|
||||
|
||||
// runFixture serves the named testdata case over an in-process file server,
|
||||
// drives it through headless Chrome with a fixed seed and a bounded step count,
|
||||
// and returns every property name that was ever reported violated.
|
||||
|
||||
Reference in new issue
Block a user