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.
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"
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));
16 TEST(CustomDictionaryTest
, Basic
) {
17 CustomDictionaryEngine engine
;
18 EXPECT_FALSE(engine
.SpellCheckWord(base::ASCIIToUTF16("helllo").c_str(),
20 std::set
<std::string
> custom_words
;
21 custom_words
.insert("helllo");
22 engine
.Init(custom_words
);
23 EXPECT_TRUE(engine
.SpellCheckWord(base::ASCIIToUTF16("helllo").c_str(),
27 TEST(CustomDictionaryTest
, HandlesNullCharacters
) {
28 base::char16 data
[4] = {'a', 0, 'b', 'c'};
29 EXPECT_FALSE(CustomDictionaryEngine().SpellCheckWord(data
, 1, 1));