Skip to content
This repository was archived by the owner on Sep 21, 2021. It is now read-only.

Commit 25833ca

Browse files
committed
Verify that the focused node has the id set in the tree aria-activedescendant attribute.
1 parent 949c414 commit 25833ca

File tree

1 file changed

+21
-1
lines changed
  • packages/devtools-components/src/tests

1 file changed

+21
-1
lines changed

packages/devtools-components/src/tests/tree.js

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ describe("Tree", () => {
6666
expect(mountTree()).toBeTruthy();
6767
});
6868

69-
it.only("is accessible", () => {
69+
it("is accessible", () => {
7070
const wrapper = mountTree({
7171
expanded: new Set("ABCDEFGHIJKLMNO".split("")),
7272
});
@@ -143,18 +143,22 @@ describe("Tree", () => {
143143
});
144144
expect(formatTree(wrapper)).toMatchSnapshot();
145145
expect(wrapper.getDOMNode().getAttribute("aria-activedescendant")).toBe("key-G");
146+
expect(wrapper.find(".focused").prop("id")).toBe("key-G");
146147

147148
getTreeNodes(wrapper).first().simulate("click");
148149
expect(formatTree(wrapper)).toMatchSnapshot();
149150
expect(wrapper.getDOMNode().getAttribute("aria-activedescendant")).toBe("key-A");
151+
expect(wrapper.find(".focused").prop("id")).toBe("key-A");
150152

151153
getTreeNodes(wrapper).first().simulate("click");
152154
expect(formatTree(wrapper)).toMatchSnapshot();
153155
expect(wrapper.getDOMNode().getAttribute("aria-activedescendant")).toBe("key-A");
156+
expect(wrapper.find(".focused").prop("id")).toBe("key-A");
154157

155158
wrapper.simulate("blur");
156159
expect(formatTree(wrapper)).toMatchSnapshot();
157160
expect(wrapper.getDOMNode().hasAttribute("aria-activedescendant")).toBe(false);
161+
expect(wrapper.find(".focused").exists()).toBe(false);
158162
});
159163

160164
it("renders as expected when navigating up with the keyboard", () => {
@@ -164,14 +168,17 @@ describe("Tree", () => {
164168
});
165169
expect(formatTree(wrapper)).toMatchSnapshot();
166170
expect(wrapper.getDOMNode().getAttribute("aria-activedescendant")).toBe("key-L");
171+
expect(wrapper.find(".focused").prop("id")).toBe("key-L");
167172

168173
simulateKeyDown(wrapper, "ArrowUp");
169174
expect(formatTree(wrapper)).toMatchSnapshot();
170175
expect(wrapper.getDOMNode().getAttribute("aria-activedescendant")).toBe("key-K");
176+
expect(wrapper.find(".focused").prop("id")).toBe("key-K");
171177

172178
simulateKeyDown(wrapper, "ArrowUp");
173179
expect(formatTree(wrapper)).toMatchSnapshot();
174180
expect(wrapper.getDOMNode().getAttribute("aria-activedescendant")).toBe("key-E");
181+
expect(wrapper.find(".focused").prop("id")).toBe("key-E");
175182
});
176183

177184
it("renders as expected when navigating up with the keyboard on a root", () => {
@@ -181,10 +188,12 @@ describe("Tree", () => {
181188
});
182189
expect(formatTree(wrapper)).toMatchSnapshot();
183190
expect(wrapper.getDOMNode().getAttribute("aria-activedescendant")).toBe("key-A");
191+
expect(wrapper.find(".focused").prop("id")).toBe("key-A");
184192

185193
simulateKeyDown(wrapper, "ArrowUp");
186194
expect(formatTree(wrapper)).toMatchSnapshot();
187195
expect(wrapper.getDOMNode().getAttribute("aria-activedescendant")).toBe("key-A");
196+
expect(wrapper.find(".focused").prop("id")).toBe("key-A");
188197
});
189198

190199
it("renders as expected when navigating down with the keyboard", () => {
@@ -194,14 +203,17 @@ describe("Tree", () => {
194203
});
195204
expect(formatTree(wrapper)).toMatchSnapshot();
196205
expect(wrapper.getDOMNode().getAttribute("aria-activedescendant")).toBe("key-K");
206+
expect(wrapper.find(".focused").prop("id")).toBe("key-K");
197207

198208
simulateKeyDown(wrapper, "ArrowDown");
199209
expect(formatTree(wrapper)).toMatchSnapshot();
200210
expect(wrapper.getDOMNode().getAttribute("aria-activedescendant")).toBe("key-L");
211+
expect(wrapper.find(".focused").prop("id")).toBe("key-L");
201212

202213
simulateKeyDown(wrapper, "ArrowDown");
203214
expect(formatTree(wrapper)).toMatchSnapshot();
204215
expect(wrapper.getDOMNode().getAttribute("aria-activedescendant")).toBe("key-F");
216+
expect(wrapper.find(".focused").prop("id")).toBe("key-F");
205217
});
206218

207219
it("renders as expected when navigating down with the keyboard on last node", () => {
@@ -211,10 +223,12 @@ describe("Tree", () => {
211223
});
212224
expect(formatTree(wrapper)).toMatchSnapshot();
213225
expect(wrapper.getDOMNode().getAttribute("aria-activedescendant")).toBe("key-O");
226+
expect(wrapper.find(".focused").prop("id")).toBe("key-O");
214227

215228
simulateKeyDown(wrapper, "ArrowDown");
216229
expect(formatTree(wrapper)).toMatchSnapshot();
217230
expect(wrapper.getDOMNode().getAttribute("aria-activedescendant")).toBe("key-O");
231+
expect(wrapper.find(".focused").prop("id")).toBe("key-O");
218232
});
219233

220234
it("renders as expected when navigating with right/left arrows", () => {
@@ -224,22 +238,27 @@ describe("Tree", () => {
224238
});
225239
expect(formatTree(wrapper)).toMatchSnapshot();
226240
expect(wrapper.getDOMNode().getAttribute("aria-activedescendant")).toBe("key-L");
241+
expect(wrapper.find(".focused").prop("id")).toBe("key-L");
227242

228243
simulateKeyDown(wrapper, "ArrowLeft");
229244
expect(formatTree(wrapper)).toMatchSnapshot();
230245
expect(wrapper.getDOMNode().getAttribute("aria-activedescendant")).toBe("key-E");
246+
expect(wrapper.find(".focused").prop("id")).toBe("key-E");
231247

232248
simulateKeyDown(wrapper, "ArrowLeft");
233249
expect(formatTree(wrapper)).toMatchSnapshot();
234250
expect(wrapper.getDOMNode().getAttribute("aria-activedescendant")).toBe("key-E");
251+
expect(wrapper.find(".focused").prop("id")).toBe("key-E");
235252

236253
simulateKeyDown(wrapper, "ArrowRight");
237254
expect(formatTree(wrapper)).toMatchSnapshot();
238255
expect(wrapper.getDOMNode().getAttribute("aria-activedescendant")).toBe("key-E");
256+
expect(wrapper.find(".focused").prop("id")).toBe("key-E");
239257

240258
simulateKeyDown(wrapper, "ArrowRight");
241259
expect(formatTree(wrapper)).toMatchSnapshot();
242260
expect(wrapper.getDOMNode().getAttribute("aria-activedescendant")).toBe("key-K");
261+
expect(wrapper.find(".focused").prop("id")).toBe("key-K");
243262
});
244263

245264
it("ignores key strokes when pressing modifiers", () => {
@@ -249,6 +268,7 @@ describe("Tree", () => {
249268
});
250269
expect(formatTree(wrapper)).toMatchSnapshot();
251270
expect(wrapper.getDOMNode().getAttribute("aria-activedescendant")).toBe("key-L");
271+
expect(wrapper.find(".focused").prop("id")).toBe("key-L");
252272

253273
let testKeys = [
254274
{ key: "ArrowDown"},

0 commit comments

Comments
 (0)