await new Promise((resolve) => { maybeOnSpellCheck(input, resolve); });
let editor = getEditor(input);
// isSpellingCheckOk is defined in spellcheck.js
ok(isSpellingCheckOk(editor, misspeltWords), "no misspelt words");
await new Promise((resolve) => { maybeOnSpellCheck(input, resolve); });
// XXX This won't work since mozInlineSpellWordUtil::SplitDOM removes
// last single quote unfortunately that is during inputting.
// isSpellingCheckOk is defined in spellcheck.js
todo_is(isSpellingCheckOk(editor, misspeltWords, true), true, "don't run spellchecker during inputting word");
await new Promise((resolve) => { maybeOnSpellCheck(input, resolve); });
misspeltWords.push("doesn");
// isSpellingCheckOk is defined in spellcheck.js
ok(isSpellingCheckOk(editor, misspeltWords), "should run spellchecker");
}
async function test_with_twice_characters(input, ch) {
let misspeltWords = [];
await new Promise((resolve) => { maybeOnSpellCheck(input, resolve); });
misspeltWords.push("doesn");
let editor = getEditor(input);
// isSpellingCheckOk is defined in spellcheck.js
ok(isSpellingCheckOk(editor, misspeltWords), "should run spellchecker");
}
async function test_between_single_quote(input) {
let misspeltWords = [];
await new Promise((resolve) => { maybeOnSpellCheck(input, resolve); });
let editor = getEditor(input);
ok(isSpellingCheckOk(editor, misspeltWords), "don't run spellchecker between single qoute");
}
async function test_with_email(input) {
let misspeltWords = [];
await new Promise((resolve) => { maybeOnSpellCheck(input, resolve); });
let editor = getEditor(input);
ok(isSpellingCheckOk(editor, misspeltWords), "don't run spellchecker for email address");
synthesizeKey(" ");
await new Promise((resolve) => { maybeOnSpellCheck(input, resolve); });
ok(isSpellingCheckOk(editor, misspeltWords), "no misspelt words due to email address");
}
async function test_with_url(input) {
let misspeltWords = [];
await new Promise((resolve) => { maybeOnSpellCheck(input, resolve); });
let editor = getEditor(input);
ok(isSpellingCheckOk(editor, misspeltWords), "don't run spellchecker for URL");
synthesizeKey(" ");
await new Promise((resolve) => { maybeOnSpellCheck(input, resolve); });
ok(isSpellingCheckOk(editor, misspeltWords), "no misspelt words due to URL");
}
SimpleTest.waitForFocus(() => {
for (let n of ["input1", "textarea1", "edit1"]) {
add_task(test_with_single_quote.bind(null,
document.getElementById(n)));
add_task(test_with_twice_characters.bind(null,
document.getElementById(n), "\'"));
add_task(test_with_twice_characters.bind(null,
document.getElementById(n),
String.fromCharCode(0x2019)));
add_task(test_between_single_quote.bind(null,
document.getElementById(n)));
add_task(test_with_email.bind(null, document.getElementById(n)));
add_task(test_with_url.bind(null, document.getElementById(n)));
}
});
</script>
</body>
</html>
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.