| OLD | NEW |
| 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 // Include test fixture. | 5 // Include test fixture. |
| 6 GEN_INCLUDE(['../testing/chromevox_unittest_base.js', | 6 GEN_INCLUDE(['../testing/chromevox_unittest_base.js', |
| 7 '../testing/assert_additions.js']); | 7 '../testing/assert_additions.js']); |
| 8 | 8 |
| 9 /** | 9 /** |
| 10 * Test fixture. | 10 * Test fixture. |
| 11 * @constructor | 11 * @constructor |
| 12 * @extends {ChromeVoxUnitTestBase} | 12 * @extends {ChromeVoxUnitTestBase} |
| 13 */ | 13 */ |
| 14 function CvoxExpandingBrailleTranslatorUnitTest() {} | 14 function CvoxExpandingBrailleTranslatorUnitTest() {} |
| 15 | 15 |
| 16 CvoxExpandingBrailleTranslatorUnitTest.prototype = { | 16 CvoxExpandingBrailleTranslatorUnitTest.prototype = { |
| 17 __proto__: ChromeVoxUnitTestBase.prototype, | 17 __proto__: ChromeVoxUnitTestBase.prototype, |
| 18 | 18 |
| 19 /** @override */ | 19 /** @override */ |
| 20 closureModuleDeps: [ | 20 closureModuleDeps: [ |
| 21 'cvox.BrailleUtil', | |
| 22 'cvox.ExpandingBrailleTranslator', | 21 'cvox.ExpandingBrailleTranslator', |
| 23 'cvox.LibLouis', | 22 'cvox.LibLouis', |
| 24 'cvox.Spannable', | 23 'cvox.Spannable', |
| 24 'cvox.ValueSelectionSpan', |
| 25 'cvox.ValueSpan', |
| 25 ] | 26 ] |
| 26 }; | 27 }; |
| 27 | 28 |
| 28 /** | 29 /** |
| 29 * An implementation of {@link cvox.LibLouis.Translator} whose translation | 30 * An implementation of {@link cvox.LibLouis.Translator} whose translation |
| 30 * output is an array buffer of the same byte length as the input and where | 31 * output is an array buffer of the same byte length as the input and where |
| 31 * each byte is equal to the character code of {@code resultChar}. The | 32 * each byte is equal to the character code of {@code resultChar}. The |
| 32 * position mappings are one to one in both directions. | 33 * position mappings are one to one in both directions. |
| 33 * @param {string} resultChar A one character string used for each byte of the | 34 * @param {string} resultChar A one character string used for each byte of the |
| 34 * result. | 35 * result. |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 66 assertTrue(actual instanceof ArrayBuffer); | 67 assertTrue(actual instanceof ArrayBuffer); |
| 67 var a = new Uint8Array(actual); | 68 var a = new Uint8Array(actual); |
| 68 assertEquals(expected.length, a.length); | 69 assertEquals(expected.length, a.length); |
| 69 for (var i = 0; i < a.length; ++i) { | 70 for (var i = 0; i < a.length; ++i) { |
| 70 assertEquals(expected.charCodeAt(i), a[i], 'Position ' + i); | 71 assertEquals(expected.charCodeAt(i), a[i], 'Position ' + i); |
| 71 } | 72 } |
| 72 } | 73 } |
| 73 | 74 |
| 74 TEST_F('CvoxExpandingBrailleTranslatorUnitTest', 'TranslationError', | 75 TEST_F('CvoxExpandingBrailleTranslatorUnitTest', 'TranslationError', |
| 75 function() { | 76 function() { |
| 76 var text = new cvox.Spannable('error ok', new cvox.BrailleUtil.ValueSpan()); | 77 var text = new cvox.Spannable('error ok', new cvox.ValueSpan()); |
| 77 text.setSpan(new cvox.BrailleUtil.ValueSelectionSpan, 0, 0); | 78 text.setSpan(new cvox.ValueSelectionSpan, 0, 0); |
| 78 var contractedTranslator = new FakeTranslator('c'); | 79 var contractedTranslator = new FakeTranslator('c'); |
| 79 // Translator that always results in an error. | 80 // Translator that always results in an error. |
| 80 var uncontractedTranslator = { | 81 var uncontractedTranslator = { |
| 81 translate: function(text, callback) { | 82 translate: function(text, callback) { |
| 82 callback(null, null, null); | 83 callback(null, null, null); |
| 83 } | 84 } |
| 84 }; | 85 }; |
| 85 var translationResult = null; | 86 var translationResult = null; |
| 86 | 87 |
| 87 var expandingTranslator = new cvox.ExpandingBrailleTranslator( | 88 var expandingTranslator = new cvox.ExpandingBrailleTranslator( |
| (...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 192 /** | 193 /** |
| 193 * Creates a spannable text with optional selection. | 194 * Creates a spannable text with optional selection. |
| 194 * @param {string} text The text. | 195 * @param {string} text The text. |
| 195 * @param {=opt_selectionStart} Selection start or caret position. No | 196 * @param {=opt_selectionStart} Selection start or caret position. No |
| 196 * selection is added if undefined. | 197 * selection is added if undefined. |
| 197 * @param {=opt_selectionEnd} Selection end if selection is not a caret. | 198 * @param {=opt_selectionEnd} Selection end if selection is not a caret. |
| 198 */ | 199 */ |
| 199 function createText(text, opt_selectionStart, opt_selectionEnd) { | 200 function createText(text, opt_selectionStart, opt_selectionEnd) { |
| 200 var result = new cvox.Spannable(text); | 201 var result = new cvox.Spannable(text); |
| 201 | 202 |
| 202 result.setSpan( | 203 result.setSpan(new cvox.ValueSpan, 0, text.length); |
| 203 new cvox.BrailleUtil.ValueSpan, 0, text.length); | |
| 204 if (goog.isDef(opt_selectionStart)) { | 204 if (goog.isDef(opt_selectionStart)) { |
| 205 result.setSpan( | 205 result.setSpan( |
| 206 new cvox.BrailleUtil.ValueSelectionSpan, | 206 new cvox.ValueSelectionSpan, |
| 207 opt_selectionStart, | 207 opt_selectionStart, |
| 208 goog.isDef(opt_selectionEnd) ? opt_selectionEnd : opt_selectionStart); | 208 goog.isDef(opt_selectionEnd) ? opt_selectionEnd : opt_selectionStart); |
| 209 } | 209 } |
| 210 return result; | 210 return result; |
| 211 } | 211 } |
| 212 | 212 |
| 213 | 213 |
| 214 var TEXT = 'Hello, world!'; | 214 var TEXT = 'Hello, world!'; |
| 215 | 215 |
| 216 TEST_F('CvoxExpandingBrailleTranslatorUnitTest', 'successfulTranslations', | 216 TEST_F('CvoxExpandingBrailleTranslatorUnitTest', 'successfulTranslations', |
| (...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 255 for (var i = 0, testCase; testCase = TESTDATA[i]; ++i) { | 255 for (var i = 0, testCase; testCase = TESTDATA[i]; ++i) { |
| 256 runTranslationTestVariants(testCase, false, expType.SELECTION); | 256 runTranslationTestVariants(testCase, false, expType.SELECTION); |
| 257 runTranslationTestVariants(testCase, true, expType.NONE); | 257 runTranslationTestVariants(testCase, true, expType.NONE); |
| 258 runTranslationTestVariants(testCase, true, expType.SELECTION); | 258 runTranslationTestVariants(testCase, true, expType.SELECTION); |
| 259 runTranslationTestVariants(testCase, true, expType.ALL); | 259 runTranslationTestVariants(testCase, true, expType.ALL); |
| 260 } | 260 } |
| 261 // Make sure that the logic above runs the tests, adjust when adding more | 261 // Make sure that the logic above runs the tests, adjust when adding more |
| 262 // tests. | 262 // tests. |
| 263 assertEquals(64, totalRunTranslationTests); | 263 assertEquals(64, totalRunTranslationTests); |
| 264 }); | 264 }); |
| OLD | NEW |