test_suggest.html (1389B)
1 <!DOCTYPE html> 2 <html> 3 <head> 4 <title>Test for nsIEditorSpellChecfker.sugget</title> 5 <script src="/tests/SimpleTest/SimpleTest.js"></script> 6 <link rel="stylesheet" href="/tests/SimpleTest/test.css" /> 7 </head> 8 <body> 9 <p id="display"></p> 10 11 <div contenteditable id="en-US" lang="en-US">missspelled</div> 12 13 <pre id="test"> 14 <script class="testbody" type="text/javascript"> 15 add_task(async function() { 16 await new Promise(resolve => SimpleTest.waitForFocus(resolve)); 17 18 let { maybeOnSpellCheck } = SpecialPowers.ChromeUtils.importESModule( 19 "resource://testing-common/AsyncSpellCheckTestHelper.sys.mjs" 20 ); 21 22 let element = document.getElementById("en-US"); 23 element.focus(); 24 25 await new Promise(resolve => maybeOnSpellCheck(element, resolve)); 26 27 let editingSession = SpecialPowers.wrap(window).docShell.editingSession; 28 let editor = editingSession.getEditorForWindow(window); 29 let spellchecker = SpecialPowers.Cu.createSpellChecker(); 30 spellchecker.setFilterType(spellchecker.FILTERTYPE_NORMAL); 31 await new Promise(resolve => spellchecker.InitSpellChecker(editor, false, resolve)); 32 33 let suggestions = await spellchecker.suggest("misspelled", 5); 34 is(suggestions.length, 0, "\"misspelled\" is correct word"); 35 36 suggestions = await spellchecker.suggest("missspelled", 5); 37 is(suggestions.length, 5, "\"missspelled\" isn't correct word"); 38 }); 39 </script> 40 </pre> 41 </body> 42 </html>