Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(679)

Side by Side Diff: chrome/browser/spellchecker/spellcheck_custom_dictionary_unittest.cc

Issue 184563006: Move WriteFile and WriteFileDescriptor from file_util to base namespace. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include <vector> 5 #include <vector>
6 6
7 #include "base/file_util.h" 7 #include "base/file_util.h"
8 #include "base/metrics/histogram_samples.h" 8 #include "base/metrics/histogram_samples.h"
9 #include "base/metrics/statistics_recorder.h" 9 #include "base/metrics/statistics_recorder.h"
10 #include "base/strings/string_number_conversions.h" 10 #include "base/strings/string_number_conversions.h"
(...skipping 208 matching lines...) Expand 10 before | Expand all | Expand 10 after
219 WordSet actual2 = custom_dictionary2->GetWords(); 219 WordSet actual2 = custom_dictionary2->GetWords();
220 EXPECT_EQ(actual2, expected2); 220 EXPECT_EQ(actual2, expected2);
221 } 221 }
222 222
223 // Legacy empty dictionary should be converted to new format empty dictionary. 223 // Legacy empty dictionary should be converted to new format empty dictionary.
224 TEST_F(SpellcheckCustomDictionaryTest, LegacyEmptyDictionaryShouldBeConverted) { 224 TEST_F(SpellcheckCustomDictionaryTest, LegacyEmptyDictionaryShouldBeConverted) {
225 base::FilePath path = 225 base::FilePath path =
226 profile_.GetPath().Append(chrome::kCustomDictionaryFileName); 226 profile_.GetPath().Append(chrome::kCustomDictionaryFileName);
227 227
228 std::string content; 228 std::string content;
229 file_util::WriteFile(path, content.c_str(), content.length()); 229 base::WriteFile(path, content.c_str(), content.length());
230 WordList loaded_custom_words = LoadDictionaryFile(path); 230 WordList loaded_custom_words = LoadDictionaryFile(path);
231 EXPECT_TRUE(loaded_custom_words.empty()); 231 EXPECT_TRUE(loaded_custom_words.empty());
232 } 232 }
233 233
234 // Legacy dictionary with two words should be converted to new format dictionary 234 // Legacy dictionary with two words should be converted to new format dictionary
235 // with two words. 235 // with two words.
236 TEST_F(SpellcheckCustomDictionaryTest, 236 TEST_F(SpellcheckCustomDictionaryTest,
237 LegacyDictionaryWithTwoWordsShouldBeConverted) { 237 LegacyDictionaryWithTwoWordsShouldBeConverted) {
238 base::FilePath path = 238 base::FilePath path =
239 profile_.GetPath().Append(chrome::kCustomDictionaryFileName); 239 profile_.GetPath().Append(chrome::kCustomDictionaryFileName);
240 240
241 std::string content = "foo\nbar\nfoo\n"; 241 std::string content = "foo\nbar\nfoo\n";
242 file_util::WriteFile(path, content.c_str(), content.length()); 242 base::WriteFile(path, content.c_str(), content.length());
243 WordList loaded_custom_words = LoadDictionaryFile(path); 243 WordList loaded_custom_words = LoadDictionaryFile(path);
244 WordList expected; 244 WordList expected;
245 expected.push_back("bar"); 245 expected.push_back("bar");
246 expected.push_back("foo"); 246 expected.push_back("foo");
247 EXPECT_EQ(expected, loaded_custom_words); 247 EXPECT_EQ(expected, loaded_custom_words);
248 } 248 }
249 249
250 // Illegal words should be removed. Leading and trailing whitespace should be 250 // Illegal words should be removed. Leading and trailing whitespace should be
251 // trimmed. 251 // trimmed.
252 TEST_F(SpellcheckCustomDictionaryTest, 252 TEST_F(SpellcheckCustomDictionaryTest,
253 IllegalWordsShouldBeRemovedFromDictionary) { 253 IllegalWordsShouldBeRemovedFromDictionary) {
254 base::FilePath path = 254 base::FilePath path =
255 profile_.GetPath().Append(chrome::kCustomDictionaryFileName); 255 profile_.GetPath().Append(chrome::kCustomDictionaryFileName);
256 256
257 std::string content = "foo\n foo bar \n\n \nbar\n" 257 std::string content = "foo\n foo bar \n\n \nbar\n"
258 "01234567890123456789012345678901234567890123456789" 258 "01234567890123456789012345678901234567890123456789"
259 "01234567890123456789012345678901234567890123456789"; 259 "01234567890123456789012345678901234567890123456789";
260 file_util::WriteFile(path, content.c_str(), content.length()); 260 base::WriteFile(path, content.c_str(), content.length());
261 WordList loaded_custom_words = LoadDictionaryFile(path); 261 WordList loaded_custom_words = LoadDictionaryFile(path);
262 WordList expected; 262 WordList expected;
263 expected.push_back("bar"); 263 expected.push_back("bar");
264 expected.push_back("foo"); 264 expected.push_back("foo");
265 expected.push_back("foo bar"); 265 expected.push_back("foo bar");
266 EXPECT_EQ(expected, loaded_custom_words); 266 EXPECT_EQ(expected, loaded_custom_words);
267 } 267 }
268 268
269 // Write to dictionary should backup previous version and write the word to the 269 // Write to dictionary should backup previous version and write the word to the
270 // end of the dictionary. If the dictionary file is corrupted on disk, the 270 // end of the dictionary. If the dictionary file is corrupted on disk, the
271 // previous version should be reloaded. 271 // previous version should be reloaded.
272 TEST_F(SpellcheckCustomDictionaryTest, CorruptedWriteShouldBeRecovered) { 272 TEST_F(SpellcheckCustomDictionaryTest, CorruptedWriteShouldBeRecovered) {
273 base::FilePath path = 273 base::FilePath path =
274 profile_.GetPath().Append(chrome::kCustomDictionaryFileName); 274 profile_.GetPath().Append(chrome::kCustomDictionaryFileName);
275 275
276 std::string content = "foo\nbar"; 276 std::string content = "foo\nbar";
277 file_util::WriteFile(path, content.c_str(), content.length()); 277 base::WriteFile(path, content.c_str(), content.length());
278 WordList loaded_custom_words = LoadDictionaryFile(path); 278 WordList loaded_custom_words = LoadDictionaryFile(path);
279 WordList expected; 279 WordList expected;
280 expected.push_back("bar"); 280 expected.push_back("bar");
281 expected.push_back("foo"); 281 expected.push_back("foo");
282 EXPECT_EQ(expected, loaded_custom_words); 282 EXPECT_EQ(expected, loaded_custom_words);
283 283
284 SpellcheckCustomDictionary::Change change; 284 SpellcheckCustomDictionary::Change change;
285 change.AddWord("baz"); 285 change.AddWord("baz");
286 UpdateDictionaryFile(change, path); 286 UpdateDictionaryFile(change, path);
287 content.clear(); 287 content.clear();
288 base::ReadFileToString(path, &content); 288 base::ReadFileToString(path, &content);
289 content.append("corruption"); 289 content.append("corruption");
290 file_util::WriteFile(path, content.c_str(), content.length()); 290 base::WriteFile(path, content.c_str(), content.length());
291 loaded_custom_words = LoadDictionaryFile(path); 291 loaded_custom_words = LoadDictionaryFile(path);
292 EXPECT_EQ(expected, loaded_custom_words); 292 EXPECT_EQ(expected, loaded_custom_words);
293 } 293 }
294 294
295 TEST_F(SpellcheckCustomDictionaryTest, 295 TEST_F(SpellcheckCustomDictionaryTest,
296 GetAllSyncDataAccuratelyReflectsDictionaryState) { 296 GetAllSyncDataAccuratelyReflectsDictionaryState) {
297 SpellcheckCustomDictionary* dictionary = 297 SpellcheckCustomDictionary* dictionary =
298 SpellcheckServiceFactory::GetForContext( 298 SpellcheckServiceFactory::GetForContext(
299 &profile_)->GetCustomDictionary(); 299 &profile_)->GetCustomDictionary();
300 300
(...skipping 867 matching lines...) Expand 10 before | Expand all | Expand 10 after
1168 SpellcheckServiceFactory::GetForContext(&profile_); 1168 SpellcheckServiceFactory::GetForContext(&profile_);
1169 SpellcheckCustomDictionary* custom_dictionary = 1169 SpellcheckCustomDictionary* custom_dictionary =
1170 spellcheck_service->GetCustomDictionary(); 1170 spellcheck_service->GetCustomDictionary();
1171 OnLoaded(*custom_dictionary, WordList()); 1171 OnLoaded(*custom_dictionary, WordList());
1172 EXPECT_FALSE(custom_dictionary->HasWord("foo")); 1172 EXPECT_FALSE(custom_dictionary->HasWord("foo"));
1173 EXPECT_FALSE(custom_dictionary->HasWord("bar")); 1173 EXPECT_FALSE(custom_dictionary->HasWord("bar"));
1174 custom_dictionary->AddWord("foo"); 1174 custom_dictionary->AddWord("foo");
1175 EXPECT_TRUE(custom_dictionary->HasWord("foo")); 1175 EXPECT_TRUE(custom_dictionary->HasWord("foo"));
1176 EXPECT_FALSE(custom_dictionary->HasWord("bar")); 1176 EXPECT_FALSE(custom_dictionary->HasWord("bar"));
1177 } 1177 }
OLDNEW
« no previous file with comments | « chrome/browser/shell_integration_linux_unittest.cc ('k') | chrome/browser/spellchecker/spellcheck_hunspell_dictionary.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698