Home | History | Annotate | Download | only in spellchecker
      1 // Copyright (c) 2013 The Chromium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 #include "base/strings/utf_string_conversions.h"
      6 #include "chrome/renderer/spellchecker/custom_dictionary_engine.h"
      7 #include "testing/gtest/include/gtest/gtest.h"
      8 
      9 TEST(CustomDictionaryTest, HandlesEmptyWordWithInvalidSubstring) {
     10   CustomDictionaryEngine engine;
     11   std::set<std::string> custom_words;
     12   engine.Init(custom_words);
     13   EXPECT_FALSE(engine.SpellCheckWord(base::string16().c_str(), 15, 23));
     14 }
     15 
     16 TEST(CustomDictionaryTest, Basic) {
     17   CustomDictionaryEngine engine;
     18   EXPECT_FALSE(engine.SpellCheckWord(ASCIIToUTF16("helllo").c_str(), 0, 6));
     19   std::set<std::string> custom_words;
     20   custom_words.insert("helllo");
     21   engine.Init(custom_words);
     22   EXPECT_TRUE(engine.SpellCheckWord(ASCIIToUTF16("helllo").c_str(), 0, 6));
     23 }
     24 
     25 TEST(CustomDictionaryTest, HandlesNullCharacters) {
     26   char16 data[4] = {'a', 0, 'b', 'c'};
     27   EXPECT_FALSE(CustomDictionaryEngine().SpellCheckWord(data, 1, 1));
     28 }
     29