Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(150)

Side by Side Diff: chrome/browser/resources/chromeos/chromevox/cvox2/background/output_test.extjs

Issue 1049853002: Support output of heading levels. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@split
Patch Set: Created 5 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « chrome/browser/resources/chromeos/chromevox/cvox2/background/output.js ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 GEN_INCLUDE(['../../testing/assert_additions.js']); 5 GEN_INCLUDE(['../../testing/assert_additions.js']);
6 GEN_INCLUDE(['../../testing/chromevox_next_e2e_test_base.js']); 6 GEN_INCLUDE(['../../testing/chromevox_next_e2e_test_base.js']);
7 7
8 /** 8 /**
9 * Test fixture for output.js. 9 * Test fixture for output.js.
10 * @constructor 10 * @constructor
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after
76 o = new Output().withSpeechAndBraille(range, null, 'navigate'); 76 o = new Output().withSpeechAndBraille(range, null, 'navigate');
77 assertEqualsJSON({string_: 'OK', 'spans_': [ 77 assertEqualsJSON({string_: 'OK', 'spans_': [
78 // Attributes. 78 // Attributes.
79 {value: 'value', start: 0, end: 2}, 79 {value: 'value', start: 0, end: 2},
80 80
81 // The name is an empty string. 81 // The name is an empty string.
82 {value: 'name', start: 2, end: 2} 82 {value: 'name', start: 2, end: 2}
83 ]}, o.toSpannable()); 83 ]}, o.toSpannable());
84 }); 84 });
85 }); 85 });
86
87 TEST_F('OutputE2ETest', 'Checkbox', function() {
88 this.runWithLoadedTree('<input type="checkbox">',
89 function(root) {
90 var el = root.firstChild.firstChild;
91 var range = cursors.Range.fromNode(el);
92 var o = new Output().withSpeechAndBraille(range, null, 'navigate');
93 assertEqualsJSON({string_: 'Check boxnot checked', 'spans_': [
94 // Attributes.
95 {value: 'name', start: 0, end: 0},
96 {value: 'role', start: 0, end: 9},
97 {value: 'state', start: 9, end: 20},
98
99 // Link earcon (based on the state).
100 {value: {}, start: 9, end: 20}
101 ]}, o.toSpannable());
102 });
103 });
104
105 TEST_F('OutputE2ETest', 'InLineTextBoxValueGetsIgnored', function() {
106 this.runWithLoadedTree('<p>OK',
107 function(root) {
108 var el = root.firstChild.firstChild.firstChild;
109 assertEquals('inlineTextBox', el.role);
110 var range = cursors.Range.fromNode(el);
111 var o = new Output().withSpeechAndBraille(range, null, 'navigate');
112 assertEqualsJSON({string_: 'OK', 'spans_': [
113 // Attributes.
114 {value: 'name', start: 0, end: 2}
115 ]}, o.toSpannable());
116
117 el = root.firstChild.firstChild;
118 assertEquals('staticText', el.role);
119 range = cursors.Range.fromNode(el);
120 o = new Output().withSpeechAndBraille(range, null, 'navigate');
121 assertEqualsJSON({string_: 'OK', 'spans_': [
122 // Attributes.
123 {value: 'value', start: 0, end: 2},
124
125 // The name is an empty string.
126 {value: 'name', start: 2, end: 2}
127 ]}, o.toSpannable());
128 });
129 });
130
131 TEST_F('OutputE2ETest', 'Headings', function() {
132 this.runWithLoadedTree(
133 '<h1>a</h1><h2>b</h2><h3>c</h3><h4>d</h4><h5>e</h5><h6>f</h6>',
134 function(root) {
135 var el = root.firstChild;
136 var range = cursors.Range.fromNode(el);
137 var o = new Output().withSpeechAndBraille(range, null, 'navigate');
138 assertEqualsJSON({string_: 'Heading 1a', 'spans_': [
dmazzoni 2015/04/15 21:06:06 I'd be happier if toSpannable didn't run things to
139 // Attributes.
140 {value: 'name', start: 9, end: 10}
141 ]}, o.toSpannable());
142
143 el = el.nextSibling;
144 range = cursors.Range.fromNode(el);
145 o = new Output().withSpeechAndBraille(range, null, 'navigate');
146 assertEqualsJSON({string_: 'Heading 2b', 'spans_': [
147 // Attributes.
148 {value: 'name', start: 9, end: 10}
149 ]}, o.toSpannable());
150
151 el = el.nextSibling;
152 range = cursors.Range.fromNode(el);
153 o = new Output().withSpeechAndBraille(range, null, 'navigate');
154 assertEqualsJSON({string_: 'Heading 3c', 'spans_': [
155 // Attributes.
156 {value: 'name', start: 9, end: 10}
157 ]}, o.toSpannable());
158
159 el = el.nextSibling;
160 range = cursors.Range.fromNode(el);
161 o = new Output().withSpeechAndBraille(range, null, 'navigate');
162 assertEqualsJSON({string_: 'Heading 4d', 'spans_': [
163 // Attributes.
164 {value: 'name', start: 9, end: 10}
165 ]}, o.toSpannable());
166
167 el = el.nextSibling;
168 range = cursors.Range.fromNode(el);
169 o = new Output().withSpeechAndBraille(range, null, 'navigate');
170 assertEqualsJSON({string_: 'Heading 5e', 'spans_': [
171 // Attributes.
172 {value: 'name', start: 9, end: 10}
173 ]}, o.toSpannable());
174
175 el = el.nextSibling;
176 range = cursors.Range.fromNode(el);
177 o = new Output().withSpeechAndBraille(range, null, 'navigate');
178 assertEqualsJSON({string_: 'Heading 6f', 'spans_': [
179 // Attributes.
180 {value: 'name', start: 9, end: 10}
181 ]}, o.toSpannable());
182 });
183 });
OLDNEW
« no previous file with comments | « chrome/browser/resources/chromeos/chromevox/cvox2/background/output.js ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698