summaryrefslogtreecommitdiffstats
path: root/third_party/WebKit/LayoutTests/accessibility/aria-readonly.html
blob: b58c653de55fccbe6ab3fa6921258d0146d643c5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html>
<head>
<script src="../fast/js/resources/js-test-pre.js"></script>
</head>
<body id="body">
<div role="textbox" aria-readonly="false" aria-multiline="false" id="ariaTextBox" tabindex="0"></div>
<div role="textbox" aria-readonly="true" id="ariaReadOnlyAriaTextBox" tabindex="0"></div>
<input type="text" aria-readonly="true" id="ariaReadOnlyTextField" size=20>
<input type="text" aria-readonly="false" id="ariaNonReadOnlyTextField" size=20>
<input type="text" readonly="readonly" id="htmlReadOnlyTextField" size=20>
<input type="text" id="textField" size=20>
<textarea rows="2" cols="20" readonly="readonly" id="htmlReadOnlyTextArea"></textarea>
<textarea rows="2" cols="20" id="textArea"></textarea>
<p id="description"></p>
<div id="console"></div>

<script>

    description("This tests that the AXValue property is correctly reported for native and non-native text boxes.");

    if (window.accessibilityController) {
          document.getElementById("ariaTextBox").focus();
          var ariaTextBox = accessibilityController.focusedElement;
          var ariaTextBoxIsWritable = ariaTextBox.isAttributeSettable("AXValue");
          shouldBe("ariaTextBoxIsWritable", "true");

          document.getElementById("ariaReadOnlyAriaTextBox").focus();
          var ariaReadOnlyAriaTextBox = accessibilityController.focusedElement;
          var ariaReadOnlyAriaTextBoxIsWritable = ariaReadOnlyAriaTextBox.isAttributeSettable("AXValue");
          shouldBe("ariaReadOnlyAriaTextBoxIsWritable", "false");

          document.getElementById("ariaReadOnlyTextField").focus();
          var ariaReadOnlyTextField = accessibilityController.focusedElement;
          var ariaReadOnlyTextFieldIsWritable = ariaReadOnlyTextField.isAttributeSettable("AXValue");
          shouldBe("ariaReadOnlyTextFieldIsWritable", "false");

          document.getElementById("ariaNonReadOnlyTextField").focus();
          var ariaNonReadOnlyTextField = accessibilityController.focusedElement;
          var ariaNonReadOnlyTextFieldIsWritable = ariaNonReadOnlyTextField.isAttributeSettable("AXValue");
          shouldBe("ariaNonReadOnlyTextFieldIsWritable", "true");

          document.getElementById("htmlReadOnlyTextField").focus();
          var htmlReadOnlyTextField = accessibilityController.focusedElement;
          var htmlReadOnlyTextFieldIsWritable = htmlReadOnlyTextField.isAttributeSettable("AXValue");
          shouldBe("htmlReadOnlyTextFieldIsWritable", "false");

          document.getElementById("textField").focus();
          var textField = accessibilityController.focusedElement;
          var textFieldIsWritable = textField.isAttributeSettable("AXValue");
          shouldBe("textFieldIsWritable", "true");

          document.getElementById("htmlReadOnlyTextArea").focus();
          var htmlReadOnlyTextArea = accessibilityController.focusedElement;
          var htmlReadOnlyTextAreaIsWritable = htmlReadOnlyTextArea.isAttributeSettable("AXValue");
          shouldBe("htmlReadOnlyTextAreaIsWritable", "false");

          document.getElementById("textArea").focus();
          var textArea = accessibilityController.focusedElement;
          var textAreaIsWritable = textArea.isAttributeSettable("AXValue");
          shouldBe("textAreaIsWritable", "true");
    }

</script>

</body>
</html>