OLD | NEW |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 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 | 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 "base/file_util.h" | 5 #include "base/file_util.h" |
6 #include "base/files/file_path.h" | 6 #include "base/files/file_path.h" |
7 #include "base/files/scoped_temp_dir.h" | 7 #include "base/files/scoped_temp_dir.h" |
8 #include "base/message_loop/message_loop.h" | 8 #include "base/message_loop/message_loop.h" |
9 #include "base/path_service.h" | 9 #include "base/path_service.h" |
10 #include "base/stl_util.h" | 10 #include "base/stl_util.h" |
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
60 }; | 60 }; |
61 | 61 |
62 const PasswordInfo kFirefoxPasswords[] = { | 62 const PasswordInfo kFirefoxPasswords[] = { |
63 {"http://localhost:8080/", "http://localhost:8080/", "http://localhost:8080/", | 63 {"http://localhost:8080/", "http://localhost:8080/", "http://localhost:8080/", |
64 L"loginuser", L"abc", L"loginpass", L"123", false}, | 64 L"loginuser", L"abc", L"loginpass", L"123", false}, |
65 {"http://localhost:8080/", "", "http://localhost:8080/localhost", | 65 {"http://localhost:8080/", "", "http://localhost:8080/localhost", |
66 L"", L"http", L"", L"Http1+1abcdefg", false}, | 66 L"", L"http", L"", L"Http1+1abcdefg", false}, |
67 }; | 67 }; |
68 | 68 |
69 const KeywordInfo kFirefoxKeywords[] = { | 69 const KeywordInfo kFirefoxKeywords[] = { |
70 { L"amazon.com", | 70 {L"amazon.com", |
71 "http://www.amazon.com/exec/obidos/external-search/?field-keywords=" | 71 "http://www.amazon.com/exec/obidos/external-search/?field-keywords=" |
72 "{searchTerms}&mode=blended" }, | 72 "{searchTerms}&mode=blended"}, |
73 { L"answers.com", | 73 {L"answers.com", |
74 "http://www.answers.com/main/ntquery?s={searchTerms}&gwp=13" }, | 74 "http://www.answers.com/main/ntquery?s={searchTerms}&gwp=13"}, |
75 { L"search.creativecommons.org", | 75 {L"search.creativecommons.org", |
76 "http://search.creativecommons.org/?q={searchTerms}" }, | 76 "http://search.creativecommons.org/?q={searchTerms}"}, |
77 { L"search.ebay.com", | 77 {L"search.ebay.com", |
78 "http://search.ebay.com/search/search.dll?query={searchTerms}&" | 78 "http://search.ebay.com/search/search.dll?query={searchTerms}&" |
79 "MfcISAPICommand=GetResult&ht=1&ebaytag1=ebayreg&srchdesc=n&" | 79 "MfcISAPICommand=GetResult&ht=1&ebaytag1=ebayreg&srchdesc=n&" |
80 "maxRecordsReturned=300&maxRecordsPerPage=50&SortProperty=MetaEndSort" }, | 80 "maxRecordsReturned=300&maxRecordsPerPage=50&SortProperty=MetaEndSort"}, |
81 { L"google.com", | 81 {L"google.com", |
82 "http://www.google.com/search?q={searchTerms}&ie=utf-8&oe=utf-8&aq=t" }, | 82 "http://www.google.com/search?q={searchTerms}&ie=utf-8&oe=utf-8&aq=t"}, |
83 { L"en.wikipedia.org", | 83 {L"en.wikipedia.org", |
84 "http://en.wikipedia.org/wiki/Special:Search?search={searchTerms}" }, | 84 "http://en.wikipedia.org/wiki/Special:Search?search={searchTerms}"}, |
85 { L"search.yahoo.com", | 85 {L"search.yahoo.com", |
86 "http://search.yahoo.com/search?p={searchTerms}&ei=UTF-8" }, | 86 "http://search.yahoo.com/search?p={searchTerms}&ei=UTF-8"}, |
87 { L"flickr.com", | 87 {L"flickr.com", "http://www.flickr.com/photos/tags/?q={searchTerms}"}, |
88 "http://www.flickr.com/photos/tags/?q={searchTerms}" }, | 88 {L"imdb.com", "http://www.imdb.com/find?q={searchTerms}"}, |
89 { L"imdb.com", | 89 {L"webster.com", |
90 "http://www.imdb.com/find?q={searchTerms}" }, | 90 "http://www.webster.com/cgi-bin/dictionary?va={searchTerms}"}, |
91 { L"webster.com", | 91 // Search keywords. |
92 "http://www.webster.com/cgi-bin/dictionary?va={searchTerms}" }, | 92 {L"\x4E2D\x6587", "http://www.google.com/"}, |
93 // Search keywords. | |
94 { L"\x4E2D\x6587", "http://www.google.com/" }, | |
95 }; | 93 }; |
96 | 94 |
97 class FirefoxObserver : public ProfileWriter, | 95 class FirefoxObserver : public ProfileWriter, |
98 public importer::ImporterProgressObserver { | 96 public importer::ImporterProgressObserver { |
99 public: | 97 public: |
100 FirefoxObserver() | 98 FirefoxObserver() |
101 : ProfileWriter(NULL), bookmark_count_(0), history_count_(0), | 99 : ProfileWriter(NULL), bookmark_count_(0), history_count_(0), |
102 password_count_(0), keyword_count_(0), import_search_engines_(true) { | 100 password_count_(0), keyword_count_(0), import_search_engines_(true) { |
103 } | 101 } |
104 | 102 |
(...skipping 114 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
219 base::DeleteFile(test_path, true); | 217 base::DeleteFile(test_path, true); |
220 base::CreateDirectory(test_path); | 218 base::CreateDirectory(test_path); |
221 profile_path_ = test_path.AppendASCII("profile"); | 219 profile_path_ = test_path.AppendASCII("profile"); |
222 app_path_ = test_path.AppendASCII("app"); | 220 app_path_ = test_path.AppendASCII("app"); |
223 base::CreateDirectory(app_path_); | 221 base::CreateDirectory(app_path_); |
224 | 222 |
225 // This will launch the browser test and thus needs to happen last. | 223 // This will launch the browser test and thus needs to happen last. |
226 InProcessBrowserTest::SetUp(); | 224 InProcessBrowserTest::SetUp(); |
227 } | 225 } |
228 | 226 |
229 void Firefox3xImporterBrowserTest( | 227 void FirefoxImporterBrowserTest(std::string profile_dir, |
230 std::string profile_dir, | 228 importer::ImporterProgressObserver* observer, |
231 importer::ImporterProgressObserver* observer, | 229 ProfileWriter* writer, |
232 ProfileWriter* writer, | 230 bool import_search_plugins) { |
233 bool import_search_plugins) { | |
234 base::FilePath data_path; | 231 base::FilePath data_path; |
235 ASSERT_TRUE(PathService::Get(chrome::DIR_TEST_DATA, &data_path)); | 232 ASSERT_TRUE(PathService::Get(chrome::DIR_TEST_DATA, &data_path)); |
236 data_path = data_path.AppendASCII(profile_dir); | 233 data_path = data_path.AppendASCII(profile_dir); |
237 ASSERT_TRUE(base::CopyDirectory(data_path, profile_path_, true)); | 234 ASSERT_TRUE(base::CopyDirectory(data_path, profile_path_, true)); |
238 ASSERT_TRUE(PathService::Get(chrome::DIR_TEST_DATA, &data_path)); | 235 ASSERT_TRUE(PathService::Get(chrome::DIR_TEST_DATA, &data_path)); |
239 data_path = data_path.AppendASCII("firefox3_nss"); | 236 data_path = data_path.AppendASCII("firefox3_nss"); |
240 ASSERT_TRUE(base::CopyDirectory(data_path, profile_path_, false)); | 237 ASSERT_TRUE(base::CopyDirectory(data_path, profile_path_, false)); |
241 | 238 |
242 base::FilePath search_engine_path = app_path_; | 239 base::FilePath search_engine_path = app_path_; |
243 search_engine_path = search_engine_path.AppendASCII("searchplugins"); | 240 search_engine_path = search_engine_path.AppendASCII("searchplugins"); |
244 base::CreateDirectory(search_engine_path); | 241 base::CreateDirectory(search_engine_path); |
245 if (import_search_plugins) { | 242 if (import_search_plugins) { |
246 ASSERT_TRUE(PathService::Get(chrome::DIR_TEST_DATA, &data_path)); | 243 ASSERT_TRUE(PathService::Get(chrome::DIR_TEST_DATA, &data_path)); |
247 data_path = data_path.AppendASCII("firefox3_searchplugins"); | |
248 if (!base::PathExists(data_path)) { | |
249 // TODO(maruel): Create search test data that we can open source! | |
250 LOG(ERROR) << L"Missing internal test data"; | |
251 return; | |
252 } | |
253 ASSERT_TRUE(base::CopyDirectory(data_path, search_engine_path, false)); | 244 ASSERT_TRUE(base::CopyDirectory(data_path, search_engine_path, false)); |
254 } | 245 } |
255 | 246 |
256 importer::SourceProfile source_profile; | 247 importer::SourceProfile source_profile; |
257 source_profile.importer_type = importer::TYPE_FIREFOX; | 248 source_profile.importer_type = importer::TYPE_FIREFOX; |
258 source_profile.app_path = app_path_; | 249 source_profile.app_path = app_path_; |
259 source_profile.source_path = profile_path_; | 250 source_profile.source_path = profile_path_; |
260 source_profile.locale = "en-US"; | 251 source_profile.locale = "en-US"; |
261 | 252 |
262 int items = importer::HISTORY | importer::PASSWORDS | importer::FAVORITES; | 253 int items = importer::HISTORY | importer::PASSWORDS | importer::FAVORITES; |
(...skipping 11 matching lines...) Expand all Loading... |
274 } | 265 } |
275 | 266 |
276 base::ScopedTempDir temp_dir_; | 267 base::ScopedTempDir temp_dir_; |
277 base::FilePath profile_path_; | 268 base::FilePath profile_path_; |
278 base::FilePath app_path_; | 269 base::FilePath app_path_; |
279 }; | 270 }; |
280 | 271 |
281 IN_PROC_BROWSER_TEST_F(FirefoxProfileImporterBrowserTest, | 272 IN_PROC_BROWSER_TEST_F(FirefoxProfileImporterBrowserTest, |
282 MAYBE_IMPORTER(Firefox30Importer)) { | 273 MAYBE_IMPORTER(Firefox30Importer)) { |
283 scoped_refptr<FirefoxObserver> observer(new FirefoxObserver()); | 274 scoped_refptr<FirefoxObserver> observer(new FirefoxObserver()); |
284 Firefox3xImporterBrowserTest("firefox3_profile", observer.get(), | 275 FirefoxImporterBrowserTest( |
285 observer.get(), true); | 276 "firefox3_profile", observer.get(), observer.get(), true); |
286 } | 277 } |
287 | 278 |
288 IN_PROC_BROWSER_TEST_F(FirefoxProfileImporterBrowserTest, | 279 IN_PROC_BROWSER_TEST_F(FirefoxProfileImporterBrowserTest, |
289 MAYBE_IMPORTER(Firefox35Importer)) { | 280 MAYBE_IMPORTER(Firefox35Importer)) { |
290 bool import_search_engines = false; | 281 bool import_search_engines = false; |
291 scoped_refptr<FirefoxObserver> observer( | 282 scoped_refptr<FirefoxObserver> observer( |
292 new FirefoxObserver(import_search_engines)); | 283 new FirefoxObserver(import_search_engines)); |
293 Firefox3xImporterBrowserTest("firefox35_profile", observer.get(), | 284 FirefoxImporterBrowserTest("firefox35_profile", |
294 observer.get(), import_search_engines); | 285 observer.get(), |
| 286 observer.get(), |
| 287 import_search_engines); |
295 } | 288 } |
| 289 |
| 290 IN_PROC_BROWSER_TEST_F(FirefoxProfileImporterBrowserTest, FirefoxImporter) { |
| 291 scoped_refptr<FirefoxObserver> observer(new FirefoxObserver()); |
| 292 FirefoxImporterBrowserTest( |
| 293 "firefox_profile", observer.get(), observer.get(), true); |
| 294 } |
OLD | NEW |