@@ -153,26 +153,35 @@ void shouldSupportPressed() {
153153
154154 @ Test
155155 void shouldSupportExpanded () {
156- page .setContent ("<button>Hi</button>\n " +
157- " <button aria-expanded=\" true\" >Hello</button>\n " +
158- " <button aria-expanded=\" false\" >Bye</button>" );
159- assertEquals (asList (
160- "<button aria-expanded=\" true\" >Hello</button>"
161- ), page .locator ("role=button[expanded]" ).evaluateAll ("els => els.map(e => e.outerHTML)" ));
162- assertEquals (asList (
163- "<button aria-expanded=\" true\" >Hello</button>"
164- ), page .locator ("role=button[expanded=true]" ).evaluateAll ("els => els.map(e => e.outerHTML)" ));
165- assertEquals (asList (
166- "<button aria-expanded=\" true\" >Hello</button>"
167- ), page .getByRole (AriaRole .BUTTON , new Page .GetByRoleOptions ().setExpanded (true )).evaluateAll ("els => els.map(e => e.outerHTML)" ));
168- assertEquals (asList (
169- "<button>Hi</button>" ,
170- "<button aria-expanded=\" false\" >Bye</button>"
171- ), page .locator ("role=button[expanded=false]" ).evaluateAll ("els => els.map(e => e.outerHTML)" ));
172- assertEquals (asList (
173- "<button>Hi</button>" ,
174- "<button aria-expanded=\" false\" >Bye</button>"
175- ), page .getByRole (AriaRole .BUTTON , new Page .GetByRoleOptions ().setExpanded (false )).evaluateAll ("els => els.map(e => e.outerHTML)" ));
156+ page .setContent ("<div role=\" treeitem\" >Hi</div>\n " +
157+ " <div role=\" treeitem\" aria-expanded=\" true\" >Hello</div>\n " +
158+ " <div role=\" treeitem\" aria-expanded=\" false\" >Bye</div>" );
159+ assertEquals (asList (
160+ "<div role=\" treeitem\" >Hi</div>" ,
161+ "<div role=\" treeitem\" aria-expanded=\" true\" >Hello</div>" ,
162+ "<div role=\" treeitem\" aria-expanded=\" false\" >Bye</div>"
163+ ), page .locator ("role=treeitem" ).evaluateAll ("els => els.map(e => e.outerHTML)" ));
164+ assertEquals (asList (
165+ "<div role=\" treeitem\" >Hi</div>" ,
166+ "<div role=\" treeitem\" aria-expanded=\" true\" >Hello</div>" ,
167+ "<div role=\" treeitem\" aria-expanded=\" false\" >Bye</div>"
168+ ), page .getByRole (AriaRole .TREEITEM ).evaluateAll ("els => els.map(e => e.outerHTML)" ));
169+
170+ assertEquals (asList ("<div role=\" treeitem\" aria-expanded=\" true\" >Hello</div>" ),
171+ page .locator ("role=treeitem[expanded]" ).evaluateAll ("els => els.map(e => e.outerHTML)" ));
172+ assertEquals (asList ("<div role=\" treeitem\" aria-expanded=\" true\" >Hello</div>" ),
173+ page .locator ("role=treeitem[expanded=true]" ).evaluateAll ("els => els.map(e => e.outerHTML)" ));
174+ assertEquals (asList ("<div role=\" treeitem\" aria-expanded=\" true\" >Hello</div>" ),
175+ page .getByRole (AriaRole .TREEITEM , new Page .GetByRoleOptions ().setExpanded (true )).evaluateAll ("els => els.map(e => e.outerHTML)" ));
176+
177+ assertEquals (asList ("<div role=\" treeitem\" aria-expanded=\" false\" >Bye</div>" ),
178+ page .locator ("role=treeitem[expanded=false]" ).evaluateAll ("els => els.map(e => e.outerHTML)" ));
179+ assertEquals (asList ("<div role=\" treeitem\" aria-expanded=\" false\" >Bye</div>" ),
180+ page .getByRole (AriaRole .TREEITEM , new Page .GetByRoleOptions ().setExpanded (false )).evaluateAll ("els => els.map(e => e.outerHTML)" ));
181+
182+ // Workaround for expanded='none'.
183+ assertEquals (asList ("<div role=\" treeitem\" >Hi</div>" ),
184+ page .locator ("[role=treeitem]:not([aria-expanded])" ).evaluateAll ("els => els.map(e => e.outerHTML)" ));
176185 }
177186
178187 @ Test
0 commit comments