| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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 /** @fileoverview Suite of tests for settings-languages-page. */ | 5 /** @fileoverview Suite of tests for settings-languages-page. */ |
| 6 | 6 |
| 7 /** @const {string} Path to root from chrome/test/data/webui/settings/. */ | 7 /** @const {string} Path to root from chrome/test/data/webui/settings/. */ |
| 8 var ROOT_PATH = '../../../../../'; | 8 var ROOT_PATH = '../../../../../'; |
| 9 | 9 |
| 10 // Polymer BrowserTest fixture. | 10 // Polymer BrowserTest fixture. |
| (...skipping 277 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 288 } | 288 } |
| 289 }); | 289 }); |
| 290 | 290 |
| 291 test('spellcheck', function() { | 291 test('spellcheck', function() { |
| 292 var spellCheckCollapse = languagesPage.$.spellCheckCollapse; | 292 var spellCheckCollapse = languagesPage.$.spellCheckCollapse; |
| 293 var spellCheckSettingsExist = !!spellCheckCollapse; | 293 var spellCheckSettingsExist = !!spellCheckCollapse; |
| 294 if (cr.isMac) { | 294 if (cr.isMac) { |
| 295 assertFalse(spellCheckSettingsExist); | 295 assertFalse(spellCheckSettingsExist); |
| 296 } else { | 296 } else { |
| 297 assertTrue(spellCheckSettingsExist); | 297 assertTrue(spellCheckSettingsExist); |
| 298 |
| 299 // Ensure no language has spell check enabled. |
| 300 for (var i = 0; i < languagesPage.languages.enabled.length; i++) { |
| 301 languagesPage.set( |
| 302 'languages.enabled.' + i + '.spellCheckEnabled', false); |
| 303 } |
| 304 |
| 305 // The row button should have the extra row only if some language has |
| 306 // spell check enabled. |
| 307 var triggerRow = languagesPage.$.spellCheckSubpageTrigger; |
| 308 assertFalse(triggerRow.classList.contains('two-line')); |
| 309 assertEquals( |
| 310 0, triggerRow.querySelector('.secondary').textContent.length); |
| 311 |
| 312 languagesPage.set( |
| 313 'languages.enabled.0.language.supportsSpellcheck', true); |
| 314 languagesPage.set('languages.enabled.0.spellCheckEnabled', true); |
| 315 assertTrue(triggerRow.classList.contains('two-line')); |
| 316 assertLT( |
| 317 0, triggerRow.querySelector('.secondary').textContent.length); |
| 318 |
| 298 MockInteractions.tap( | 319 MockInteractions.tap( |
| 299 spellCheckCollapse.querySelector('.list-button:last-of-type')); | 320 spellCheckCollapse.querySelector('.list-button:last-of-type')); |
| 300 assertTrue(!!languagesPage.$$('settings-edit-dictionary-page')); | 321 assertTrue(!!languagesPage.$$('settings-edit-dictionary-page')); |
| 301 } | 322 } |
| 302 }); | 323 }); |
| 303 }.bind(this)); | 324 }.bind(this)); |
| 304 | 325 |
| 305 // TODO(michaelpg): Test more aspects of the languages UI. | 326 // TODO(michaelpg): Test more aspects of the languages UI. |
| 306 | 327 |
| 307 // Run all registered tests. | 328 // Run all registered tests. |
| 308 mocha.run(); | 329 mocha.run(); |
| 309 }); | 330 }); |
| OLD | NEW |