| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 var kNewInputMethodTemplate = '_comp_ime_{EXT_ID}xkb:fr::fra'; | 5 var kNewInputMethodTemplate = '_comp_ime_{EXT_ID}xkb:fr::fra'; |
| 6 var kInitialInputMethodRegex = /_comp_ime_([a-z]{32})xkb:us::eng/; | 6 var kInitialInputMethodRegex = /_comp_ime_([a-z]{32})xkb:us::eng/; |
| 7 var kInvalidInputMethod = 'xx::xxx'; | 7 var kInvalidInputMethod = 'xx::xxx'; |
| 8 | 8 |
| 9 var testParams = { | 9 var testParams = { |
| 10 initialInputMethod: '', | 10 initialInputMethod: '', |
| (...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 92 foundInitialInputMethod = true; | 92 foundInitialInputMethod = true; |
| 93 if (inputMethods[i].id == testParams.newInputMethod) | 93 if (inputMethods[i].id == testParams.newInputMethod) |
| 94 foundNewInputMethod = true; | 94 foundNewInputMethod = true; |
| 95 } | 95 } |
| 96 chrome.test.assertTrue(foundInitialInputMethod); | 96 chrome.test.assertTrue(foundInitialInputMethod); |
| 97 chrome.test.assertTrue(foundNewInputMethod); | 97 chrome.test.assertTrue(foundNewInputMethod); |
| 98 chrome.test.succeed(); | 98 chrome.test.succeed(); |
| 99 }); | 99 }); |
| 100 } | 100 } |
| 101 | 101 |
| 102 function initDictionaryNotLoadedTest() { | 102 function fetchDictionaryTests() { |
| 103 // This test must come first because the dictionary is only lazy loaded after | 103 var fetchWordsPromise = new Promise(function(resolve, reject) { |
| 104 // this call is made. | 104 chrome.inputMethodPrivate.onDictionaryLoaded.addListener(function() { |
| 105 chrome.inputMethodPrivate.fetchAllDictionaryWords(function(words) { | 105 chrome.inputMethodPrivate.fetchAllDictionaryWords(resolve); |
| 106 chrome.test.assertTrue(words === undefined); | 106 }); |
| 107 chrome.test.assertTrue(!!chrome.runtime.lastError); | 107 chrome.inputMethodPrivate.fetchAllDictionaryWords(resolve); |
| 108 chrome.test.succeed(); | |
| 109 }); | 108 }); |
| 110 } | 109 fetchWordsPromise.then(function(words) { |
| 111 | |
| 112 function initDictionaryTests() { | |
| 113 chrome.inputMethodPrivate.fetchAllDictionaryWords(function(words) { | |
| 114 chrome.test.assertTrue(words !== undefined); | 110 chrome.test.assertTrue(words !== undefined); |
| 115 chrome.test.assertTrue(words.length === 0); | 111 chrome.test.assertTrue(words.length === 0); |
| 116 chrome.test.succeed(); | 112 chrome.test.succeed(); |
| 117 }); | 113 }); |
| 118 } | 114 } |
| 119 | 115 |
| 120 function addWordToDictionaryTest() { | 116 function addWordToDictionaryTest() { |
| 121 chrome.inputMethodPrivate.addWordToDictionary('helloworld', function() { | 117 var wordToAdd = 'helloworld'; |
| 118 chrome.inputMethodPrivate.addWordToDictionary(wordToAdd, function() { |
| 122 chrome.inputMethodPrivate.fetchAllDictionaryWords(function(words) { | 119 chrome.inputMethodPrivate.fetchAllDictionaryWords(function(words) { |
| 123 chrome.test.assertTrue(words.length === 1); | 120 chrome.test.assertTrue(words.length === 1); |
| 124 chrome.test.assertEq(words[0], 'helloworld'); | 121 chrome.test.assertEq(words[0], wordToAdd); |
| 125 chrome.test.succeed(); | 122 chrome.test.succeed(); |
| 126 }); | 123 }); |
| 127 }); | 124 }); |
| 128 } | 125 } |
| 129 | 126 |
| 127 function dictionaryChangedTest() { |
| 128 var wordToAdd = 'helloworld2'; |
| 129 chrome.inputMethodPrivate.onDictionaryChanged.addListener( |
| 130 function(added, removed) { |
| 131 chrome.test.assertTrue(added.length === 1); |
| 132 chrome.test.assertTrue(removed.length === 0); |
| 133 chrome.test.assertEq(added[0], wordToAdd); |
| 134 chrome.test.succeed(); |
| 135 }); |
| 136 chrome.inputMethodPrivate.addWordToDictionary(wordToAdd); |
| 137 } |
| 138 |
| 130 chrome.test.sendMessage('ready'); | 139 chrome.test.sendMessage('ready'); |
| 131 chrome.test.runTests( | 140 chrome.test.runTests( |
| 132 [initTests, setTest, getTest, observeTest, setInvalidTest, getListTest, | 141 [initTests, setTest, getTest, observeTest, setInvalidTest, getListTest, |
| 133 initDictionaryNotLoadedTest, initDictionaryTests, | 142 fetchDictionaryTests, addWordToDictionaryTest, dictionaryChangedTest]); |
| 134 addWordToDictionaryTest]); | |
| OLD | NEW |