diff options
Diffstat (limited to 'chrome/renderer')
-rw-r--r-- | chrome/renderer/spellchecker/spellcheck_unittest.cc | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/chrome/renderer/spellchecker/spellcheck_unittest.cc b/chrome/renderer/spellchecker/spellcheck_unittest.cc index 8a443a63..f5a8dc1 100644 --- a/chrome/renderer/spellchecker/spellcheck_unittest.cc +++ b/chrome/renderer/spellchecker/spellcheck_unittest.cc @@ -1326,3 +1326,30 @@ TEST_F(SpellCheckTest, SpellingEngine_CheckSpelling) { } } +// Chrome should not suggest "Othello" for "hellllo" or "identically" for +// "accidently". +TEST_F(SpellCheckTest, LogicalSuggestions) { + static const struct { + const char* misspelled; + const char* suggestion; + } kTestCases[] = { + { "hellllo", "hello" }, + { "accidently", "accidentally" } + }; + + for (size_t i = 0; i < ARRAYSIZE_UNSAFE(kTestCases); ++i) { + int misspelling_start = 0; + int misspelling_length = 0; + std::vector<string16> suggestions; + EXPECT_FALSE(spell_check()->SpellCheckWord( + ASCIIToUTF16(kTestCases[i].misspelled).c_str(), + strlen(kTestCases[i].misspelled), + 0, + &misspelling_start, + &misspelling_length, + &suggestions)); + EXPECT_GE(suggestions.size(), static_cast<size_t>(1)); + if (suggestions.size() > 0) + EXPECT_EQ(suggestions[0], ASCIIToUTF16(kTestCases[i].suggestion)); + } +} |