Bug 1424156 part 4: Add test for aria-live in Web Console messages. r?nchevobbe draft
authorJames Teh <jteh@mozilla.com>
Fri, 05 Jan 2018 14:32:09 +1000
changeset 717501 61d2eba170a631e8d0e704d837b9c6e57c282df1
parent 715563 a06ae83891621cdb90b90b764a862e29296cac5f
child 745278 f6671e625f58dbc3cc55dc5ac36f60bbd61ea9a8
push id94703
push userbmo:jteh@mozilla.com
push dateTue, 09 Jan 2018 04:10:53 +0000
reviewersnchevobbe
bugs1424156
milestone59.0a1
Bug 1424156 part 4: Add test for aria-live in Web Console messages. r?nchevobbe MozReview-Commit-ID: A1y18uTbjIJ
devtools/client/webconsole/new-console-output/test/components/message-types-aria.test.js
new file mode 100644
--- /dev/null
+++ b/devtools/client/webconsole/new-console-output/test/components/message-types-aria.test.js
@@ -0,0 +1,50 @@
+/* Any copyright is dedicated to the Public Domain.
+   http://creativecommons.org/publicdomain/zero/1.0/ */
+"use strict";
+
+// Test utils.
+const expect = require("expect");
+
+const {
+  renderComponent
+} = require("devtools/client/webconsole/new-console-output/test/helpers");
+
+// Components under test.
+const ConsoleApiCall = require("devtools/client/webconsole/new-console-output/components/message-types/ConsoleApiCall");
+const ConsoleCmd = require("devtools/client/webconsole/new-console-output/components/message-types/ConsoleCommand");
+const EvaluationResult = require("devtools/client/webconsole/new-console-output/components/message-types/EvaluationResult");
+
+const { ConsoleCommand } = require("devtools/client/webconsole/new-console-output/types");
+
+// Test fakes.
+const { stubPreparedMessages } = require("devtools/client/webconsole/new-console-output/test/fixtures/stubs/index");
+const serviceContainer = require("devtools/client/webconsole/new-console-output/test/fixtures/serviceContainer");
+
+describe("message types component ARIA:", () => {
+  describe("ConsoleAPICall", () => {
+    it("sets aria-live to polite", () => {
+      const message = stubPreparedMessages.get("console.log('foobar', 'test')");
+      const wrapper = renderComponent(ConsoleApiCall,
+        { message, serviceContainer });
+      expect(wrapper.getAttribute("aria-live")).toBe("polite");
+    });
+  });
+
+  describe("EvaluationResult", () => {
+    it("sets aria-live to polite", () => {
+      const message = stubPreparedMessages.get("asdf()");
+      const wrapper = renderComponent(EvaluationResult, { message, serviceContainer });
+      expect(wrapper.getAttribute("aria-live")).toBe("polite");
+    });
+  });
+
+  describe("ConsoleCommand", () => {
+    it("sets aria-live to off", () => {
+      let message = new ConsoleCommand({
+        messageText: `"simple"`,
+      });
+      const wrapper = renderComponent(ConsoleCmd, { message, serviceContainer});
+      expect(wrapper.getAttribute("aria-live")).toBe("off");
+    });
+  });
+});