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

Side by Side Diff: chrome/browser/search_engines/template_url_service_sync_unittest.cc

Issue 338363004: Remove Profile* from TemplateURL (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Address comments Created 6 years, 6 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 "base/memory/scoped_ptr.h" 5 #include "base/memory/scoped_ptr.h"
6 #include "base/memory/scoped_vector.h" 6 #include "base/memory/scoped_vector.h"
7 #include "base/run_loop.h" 7 #include "base/run_loop.h"
8 #include "base/strings/string_util.h" 8 #include "base/strings/string_util.h"
9 #include "base/strings/utf_string_conversions.h" 9 #include "base/strings/utf_string_conversions.h"
10 #include "base/time/time.h" 10 #include "base/time/time.h"
(...skipping 258 matching lines...) Expand 10 before | Expand all | Expand 10 after
269 data.SetKeyword(keyword); 269 data.SetKeyword(keyword);
270 data.SetURL(url); 270 data.SetURL(url);
271 data.favicon_url = GURL("http://favicon.url"); 271 data.favicon_url = GURL("http://favicon.url");
272 data.safe_for_autoreplace = safe_for_autoreplace; 272 data.safe_for_autoreplace = safe_for_autoreplace;
273 data.date_created = Time::FromTimeT(100); 273 data.date_created = Time::FromTimeT(100);
274 data.last_modified = Time::FromTimeT(last_mod); 274 data.last_modified = Time::FromTimeT(last_mod);
275 data.created_by_policy = created_by_policy; 275 data.created_by_policy = created_by_policy;
276 data.prepopulate_id = 999999; 276 data.prepopulate_id = 999999;
277 if (!guid.empty()) 277 if (!guid.empty())
278 data.sync_guid = guid; 278 data.sync_guid = guid;
279 return new TemplateURL(NULL, data); 279 return new TemplateURL(data);
280 } 280 }
281 281
282 void TemplateURLServiceSyncTest::AssertEquals(const TemplateURL& expected, 282 void TemplateURLServiceSyncTest::AssertEquals(const TemplateURL& expected,
283 const TemplateURL& actual) const { 283 const TemplateURL& actual) const {
284 ASSERT_EQ(expected.short_name(), actual.short_name()); 284 ASSERT_EQ(expected.short_name(), actual.short_name());
285 ASSERT_EQ(expected.keyword(), actual.keyword()); 285 ASSERT_EQ(expected.keyword(), actual.keyword());
286 ASSERT_EQ(expected.url(), actual.url()); 286 ASSERT_EQ(expected.url(), actual.url());
287 ASSERT_EQ(expected.suggestions_url(), actual.suggestions_url()); 287 ASSERT_EQ(expected.suggestions_url(), actual.suggestions_url());
288 ASSERT_EQ(expected.favicon_url(), actual.favicon_url()); 288 ASSERT_EQ(expected.favicon_url(), actual.favicon_url());
289 ASSERT_EQ(expected.show_in_default_list(), actual.show_in_default_list()); 289 ASSERT_EQ(expected.show_in_default_list(), actual.show_in_default_list());
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after
348 348
349 TemplateURL* TemplateURLServiceSyncTest::CopyTemplateURL( 349 TemplateURL* TemplateURLServiceSyncTest::CopyTemplateURL(
350 const TemplateURLData* turl, 350 const TemplateURLData* turl,
351 const std::string& url, 351 const std::string& url,
352 const std::string& guid) { 352 const std::string& guid) {
353 TemplateURLData data = *turl; 353 TemplateURLData data = *turl;
354 data.SetURL(url); 354 data.SetURL(url);
355 data.date_created = Time::FromTimeT(100); 355 data.date_created = Time::FromTimeT(100);
356 data.last_modified = Time::FromTimeT(100); 356 data.last_modified = Time::FromTimeT(100);
357 data.sync_guid = guid; 357 data.sync_guid = guid;
358 return new TemplateURL(NULL, data); 358 return new TemplateURL(data);
359 } 359 }
360 360
361 // Actual tests --------------------------------------------------------------- 361 // Actual tests ---------------------------------------------------------------
362 362
363 TEST_F(TemplateURLServiceSyncTest, SerializeDeserialize) { 363 TEST_F(TemplateURLServiceSyncTest, SerializeDeserialize) {
364 // Create a TemplateURL and convert it into a sync specific type. 364 // Create a TemplateURL and convert it into a sync specific type.
365 scoped_ptr<TemplateURL> turl( 365 scoped_ptr<TemplateURL> turl(
366 CreateTestTemplateURL( 366 CreateTestTemplateURL(
367 ASCIIToUTF16("unittest"), "http://www.unittest.com/")); 367 ASCIIToUTF16("unittest"), "http://www.unittest.com/"));
368 syncer::SyncData sync_data = 368 syncer::SyncData sync_data =
(...skipping 875 matching lines...) Expand 10 before | Expand all | Expand 10 after
1244 data.input_encodings.push_back("UTF-8"); 1244 data.input_encodings.push_back("UTF-8");
1245 data.input_encodings.push_back("UTF-16"); 1245 data.input_encodings.push_back("UTF-16");
1246 data.input_encodings.push_back("UTF-8"); 1246 data.input_encodings.push_back("UTF-8");
1247 data.input_encodings.push_back("Big5"); 1247 data.input_encodings.push_back("Big5");
1248 data.input_encodings.push_back("UTF-16"); 1248 data.input_encodings.push_back("UTF-16");
1249 data.input_encodings.push_back("Big5"); 1249 data.input_encodings.push_back("Big5");
1250 data.input_encodings.push_back("Windows-1252"); 1250 data.input_encodings.push_back("Windows-1252");
1251 data.date_created = Time::FromTimeT(100); 1251 data.date_created = Time::FromTimeT(100);
1252 data.last_modified = Time::FromTimeT(100); 1252 data.last_modified = Time::FromTimeT(100);
1253 data.sync_guid = "keyword"; 1253 data.sync_guid = "keyword";
1254 scoped_ptr<TemplateURL> turl(new TemplateURL(NULL, data)); 1254 scoped_ptr<TemplateURL> turl(new TemplateURL(data));
1255 initial_data.push_back( 1255 initial_data.push_back(
1256 TemplateURLService::CreateSyncDataFromTemplateURL(*turl)); 1256 TemplateURLService::CreateSyncDataFromTemplateURL(*turl));
1257 1257
1258 // Now try to sync the data locally. 1258 // Now try to sync the data locally.
1259 model()->MergeDataAndStartSyncing(syncer::SEARCH_ENGINES, initial_data, 1259 model()->MergeDataAndStartSyncing(syncer::SEARCH_ENGINES, initial_data,
1260 PassProcessor(), CreateAndPassSyncErrorFactory()); 1260 PassProcessor(), CreateAndPassSyncErrorFactory());
1261 1261
1262 // The entry should have been added, with duplicate encodings removed. 1262 // The entry should have been added, with duplicate encodings removed.
1263 TemplateURL* keyword = 1263 TemplateURL* keyword =
1264 model()->GetTemplateURLForKeyword(ASCIIToUTF16("keyword")); 1264 model()->GetTemplateURLForKeyword(ASCIIToUTF16("keyword"));
(...skipping 140 matching lines...) Expand 10 before | Expand all | Expand 10 after
1405 syncer::SEARCH_ENGINES, 1405 syncer::SEARCH_ENGINES,
1406 initial_data, 1406 initial_data,
1407 PassProcessor(), 1407 PassProcessor(),
1408 CreateAndPassSyncErrorFactory()).error(); 1408 CreateAndPassSyncErrorFactory()).error();
1409 ASSERT_FALSE(error.IsSet()); 1409 ASSERT_FALSE(error.IsSet());
1410 1410
1411 // We should have updated the original TemplateURL with Sync's version. 1411 // We should have updated the original TemplateURL with Sync's version.
1412 // Keep a copy of it so we can compare it after we re-merge. 1412 // Keep a copy of it so we can compare it after we re-merge.
1413 TemplateURL* key1_url = model()->GetTemplateURLForGUID("key1"); 1413 TemplateURL* key1_url = model()->GetTemplateURLForGUID("key1");
1414 ASSERT_TRUE(key1_url); 1414 ASSERT_TRUE(key1_url);
1415 scoped_ptr<TemplateURL> updated_turl(new TemplateURL(key1_url->profile(), 1415 scoped_ptr<TemplateURL> updated_turl(new TemplateURL(key1_url->data()));
1416 key1_url->data()));
1417 EXPECT_EQ(Time::FromTimeT(90), updated_turl->last_modified()); 1416 EXPECT_EQ(Time::FromTimeT(90), updated_turl->last_modified());
1418 1417
1419 // Modify a single field of the initial data. This should not be updated in 1418 // Modify a single field of the initial data. This should not be updated in
1420 // the second merge, as the last_modified timestamp remains the same. 1419 // the second merge, as the last_modified timestamp remains the same.
1421 scoped_ptr<TemplateURL> temp_turl(Deserialize(initial_data[0])); 1420 scoped_ptr<TemplateURL> temp_turl(Deserialize(initial_data[0]));
1422 TemplateURLData data(temp_turl->data()); 1421 TemplateURLData data(temp_turl->data());
1423 data.short_name = ASCIIToUTF16("SomethingDifferent"); 1422 data.short_name = ASCIIToUTF16("SomethingDifferent");
1424 temp_turl.reset(new TemplateURL(temp_turl->profile(), data)); 1423 temp_turl.reset(new TemplateURL(data));
1425 initial_data.clear(); 1424 initial_data.clear();
1426 initial_data.push_back( 1425 initial_data.push_back(
1427 TemplateURLService::CreateSyncDataFromTemplateURL(*temp_turl)); 1426 TemplateURLService::CreateSyncDataFromTemplateURL(*temp_turl));
1428 1427
1429 // Remerge the data again. This simulates shutting down and syncing again 1428 // Remerge the data again. This simulates shutting down and syncing again
1430 // at a different time, but the cloud data has not changed. 1429 // at a different time, but the cloud data has not changed.
1431 model()->StopSyncing(syncer::SEARCH_ENGINES); 1430 model()->StopSyncing(syncer::SEARCH_ENGINES);
1432 sync_processor_wrapper_.reset( 1431 sync_processor_wrapper_.reset(
1433 new syncer::SyncChangeProcessorWrapperForTest(sync_processor_.get())); 1432 new syncer::SyncChangeProcessorWrapperForTest(sync_processor_.get()));
1434 error = model()->MergeDataAndStartSyncing( 1433 error = model()->MergeDataAndStartSyncing(
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after
1502 data.SetKeyword(ASCIIToUTF16("key2")); 1501 data.SetKeyword(ASCIIToUTF16("key2"));
1503 data.SetURL("http://key2.com/{searchTerms}"); 1502 data.SetURL("http://key2.com/{searchTerms}");
1504 data.favicon_url = GURL("http://favicon.url"); 1503 data.favicon_url = GURL("http://favicon.url");
1505 data.safe_for_autoreplace = false; 1504 data.safe_for_autoreplace = false;
1506 data.date_created = Time::FromTimeT(100); 1505 data.date_created = Time::FromTimeT(100);
1507 data.last_modified = Time::FromTimeT(100); 1506 data.last_modified = Time::FromTimeT(100);
1508 data.created_by_policy = false; 1507 data.created_by_policy = false;
1509 data.prepopulate_id = 999999; 1508 data.prepopulate_id = 999999;
1510 data.sync_guid = "key2"; 1509 data.sync_guid = "key2";
1511 data.show_in_default_list = true; 1510 data.show_in_default_list = true;
1512 scoped_ptr<TemplateURL> turl2(new TemplateURL(NULL, data)); 1511 scoped_ptr<TemplateURL> turl2(new TemplateURL(data));
1513 initial_data.push_back(TemplateURLService::CreateSyncDataFromTemplateURL( 1512 initial_data.push_back(TemplateURLService::CreateSyncDataFromTemplateURL(
1514 *turl1)); 1513 *turl1));
1515 initial_data.push_back(TemplateURLService::CreateSyncDataFromTemplateURL( 1514 initial_data.push_back(TemplateURLService::CreateSyncDataFromTemplateURL(
1516 *turl2)); 1515 *turl2));
1517 model()->MergeDataAndStartSyncing(syncer::SEARCH_ENGINES, initial_data, 1516 model()->MergeDataAndStartSyncing(syncer::SEARCH_ENGINES, initial_data,
1518 PassProcessor(), CreateAndPassSyncErrorFactory()); 1517 PassProcessor(), CreateAndPassSyncErrorFactory());
1519 model()->SetUserSelectedDefaultSearchProvider( 1518 model()->SetUserSelectedDefaultSearchProvider(
1520 model()->GetTemplateURLForGUID("key1")); 1519 model()->GetTemplateURLForGUID("key1"));
1521 ASSERT_EQ("key1", model()->GetDefaultSearchProvider()->sync_guid()); 1520 ASSERT_EQ("key1", model()->GetDefaultSearchProvider()->sync_guid());
1522 1521
(...skipping 305 matching lines...) Expand 10 before | Expand all | Expand 10 after
1828 ASSERT_FALSE(prepop_turls.empty()); 1827 ASSERT_FALSE(prepop_turls.empty());
1829 1828
1830 // Create a copy of the first TemplateURL with a really old timestamp and a 1829 // Create a copy of the first TemplateURL with a really old timestamp and a
1831 // new keyword. Add it to the model. 1830 // new keyword. Add it to the model.
1832 TemplateURLData data_copy(*prepop_turls[0]); 1831 TemplateURLData data_copy(*prepop_turls[0]);
1833 data_copy.last_modified = Time::FromTimeT(10); 1832 data_copy.last_modified = Time::FromTimeT(10);
1834 base::string16 original_keyword = data_copy.keyword(); 1833 base::string16 original_keyword = data_copy.keyword();
1835 data_copy.SetKeyword(ASCIIToUTF16(kNewKeyword)); 1834 data_copy.SetKeyword(ASCIIToUTF16(kNewKeyword));
1836 // Set safe_for_autoreplace to false so our keyword survives. 1835 // Set safe_for_autoreplace to false so our keyword survives.
1837 data_copy.safe_for_autoreplace = false; 1836 data_copy.safe_for_autoreplace = false;
1838 model()->Add(new TemplateURL(profile_a(), data_copy)); 1837 model()->Add(new TemplateURL(data_copy));
1839 1838
1840 // Merge the prepopulate search engines. 1839 // Merge the prepopulate search engines.
1841 base::Time pre_merge_time = base::Time::Now(); 1840 base::Time pre_merge_time = base::Time::Now();
1842 base::RunLoop().RunUntilIdle(); 1841 base::RunLoop().RunUntilIdle();
1843 test_util_a_.ResetModel(true); 1842 test_util_a_.ResetModel(true);
1844 1843
1845 // The newly added search engine should have been safely merged, with an 1844 // The newly added search engine should have been safely merged, with an
1846 // updated time. 1845 // updated time.
1847 TemplateURL* added_turl = model()->GetTemplateURLForKeyword( 1846 TemplateURL* added_turl = model()->GetTemplateURLForKeyword(
1848 ASCIIToUTF16(kNewKeyword)); 1847 ASCIIToUTF16(kNewKeyword));
1849 ASSERT_TRUE(added_turl); 1848 ASSERT_TRUE(added_turl);
1850 base::Time new_timestamp = added_turl->last_modified(); 1849 base::Time new_timestamp = added_turl->last_modified();
1851 EXPECT_GE(new_timestamp, pre_merge_time); 1850 EXPECT_GE(new_timestamp, pre_merge_time);
1852 std::string sync_guid = added_turl->sync_guid(); 1851 std::string sync_guid = added_turl->sync_guid();
1853 1852
1854 // Bring down a copy of the prepopulate engine from Sync with the old values, 1853 // Bring down a copy of the prepopulate engine from Sync with the old values,
1855 // including the old timestamp and the same GUID. Ensure that it loses 1854 // including the old timestamp and the same GUID. Ensure that it loses
1856 // conflict resolution against the local value, and an update is sent to the 1855 // conflict resolution against the local value, and an update is sent to the
1857 // server. The new timestamp should be preserved. 1856 // server. The new timestamp should be preserved.
1858 syncer::SyncDataList initial_data; 1857 syncer::SyncDataList initial_data;
1859 data_copy.SetKeyword(original_keyword); 1858 data_copy.SetKeyword(original_keyword);
1860 data_copy.sync_guid = sync_guid; 1859 data_copy.sync_guid = sync_guid;
1861 scoped_ptr<TemplateURL> sync_turl(new TemplateURL(profile_a(), data_copy)); 1860 scoped_ptr<TemplateURL> sync_turl(new TemplateURL(data_copy));
1862 initial_data.push_back( 1861 initial_data.push_back(
1863 TemplateURLService::CreateSyncDataFromTemplateURL(*sync_turl)); 1862 TemplateURLService::CreateSyncDataFromTemplateURL(*sync_turl));
1864 1863
1865 syncer::SyncMergeResult merge_result = model()->MergeDataAndStartSyncing( 1864 syncer::SyncMergeResult merge_result = model()->MergeDataAndStartSyncing(
1866 syncer::SEARCH_ENGINES, 1865 syncer::SEARCH_ENGINES,
1867 initial_data, PassProcessor(), CreateAndPassSyncErrorFactory()); 1866 initial_data, PassProcessor(), CreateAndPassSyncErrorFactory());
1868 1867
1869 ASSERT_EQ(added_turl, model()->GetTemplateURLForKeyword( 1868 ASSERT_EQ(added_turl, model()->GetTemplateURLForKeyword(
1870 ASCIIToUTF16(kNewKeyword))); 1869 ASCIIToUTF16(kNewKeyword)));
1871 EXPECT_EQ(new_timestamp, added_turl->last_modified()); 1870 EXPECT_EQ(new_timestamp, added_turl->last_modified());
(...skipping 253 matching lines...) Expand 10 before | Expand all | Expand 10 after
2125 EXPECT_EQ(default_turl->url(), result_turl->url()); 2124 EXPECT_EQ(default_turl->url(), result_turl->url());
2126 } 2125 }
2127 2126
2128 TEST_F(TemplateURLServiceSyncTest, UpdatePrepopulatedEngine) { 2127 TEST_F(TemplateURLServiceSyncTest, UpdatePrepopulatedEngine) {
2129 scoped_ptr<TemplateURLData> default_turl( 2128 scoped_ptr<TemplateURLData> default_turl(
2130 TemplateURLPrepopulateData::GetPrepopulatedDefaultSearch(NULL)); 2129 TemplateURLPrepopulateData::GetPrepopulatedDefaultSearch(NULL));
2131 2130
2132 TemplateURLData data = *default_turl; 2131 TemplateURLData data = *default_turl;
2133 data.SetURL("http://old.wrong.url.com?q={searchTerms}"); 2132 data.SetURL("http://old.wrong.url.com?q={searchTerms}");
2134 data.sync_guid = "default"; 2133 data.sync_guid = "default";
2135 model()->Add(new TemplateURL(NULL, data)); 2134 model()->Add(new TemplateURL(data));
2136 2135
2137 syncer::SyncMergeResult merge_result = model()->MergeDataAndStartSyncing( 2136 syncer::SyncMergeResult merge_result = model()->MergeDataAndStartSyncing(
2138 syncer::SEARCH_ENGINES, syncer::SyncDataList(), PassProcessor(), 2137 syncer::SEARCH_ENGINES, syncer::SyncDataList(), PassProcessor(),
2139 CreateAndPassSyncErrorFactory()); 2138 CreateAndPassSyncErrorFactory());
2140 2139
2141 TemplateURL* sync_turl = CopyTemplateURL(default_turl.get(), 2140 TemplateURL* sync_turl = CopyTemplateURL(default_turl.get(),
2142 "http://new.wrong.url.com?q={searchTerms}", "default"); 2141 "http://new.wrong.url.com?q={searchTerms}", "default");
2143 2142
2144 // Update the engine in the model, which is prepopulated, with a new one. 2143 // Update the engine in the model, which is prepopulated, with a new one.
2145 // Both have wrong URLs, but it should still get corrected. 2144 // Both have wrong URLs, but it should still get corrected.
(...skipping 14 matching lines...) Expand all
2160 TemplateURLPrepopulateData::GetPrepopulatedDefaultSearch(NULL)); 2159 TemplateURLPrepopulateData::GetPrepopulatedDefaultSearch(NULL));
2161 2160
2162 TemplateURLData data(*default_turl); 2161 TemplateURLData data(*default_turl);
2163 data.safe_for_autoreplace = false; 2162 data.safe_for_autoreplace = false;
2164 data.SetKeyword(ASCIIToUTF16("new_kw")); 2163 data.SetKeyword(ASCIIToUTF16("new_kw"));
2165 data.short_name = ASCIIToUTF16("my name"); 2164 data.short_name = ASCIIToUTF16("my name");
2166 data.SetURL("http://wrong.url.com?q={searchTerms}"); 2165 data.SetURL("http://wrong.url.com?q={searchTerms}");
2167 data.date_created = Time::FromTimeT(50); 2166 data.date_created = Time::FromTimeT(50);
2168 data.last_modified = Time::FromTimeT(50); 2167 data.last_modified = Time::FromTimeT(50);
2169 data.sync_guid = "default"; 2168 data.sync_guid = "default";
2170 model()->Add(new TemplateURL(NULL, data)); 2169 model()->Add(new TemplateURL(data));
2171 2170
2172 data.date_created = Time::FromTimeT(100); 2171 data.date_created = Time::FromTimeT(100);
2173 data.last_modified = Time::FromTimeT(100); 2172 data.last_modified = Time::FromTimeT(100);
2174 scoped_ptr<TemplateURL> sync_turl(new TemplateURL(NULL, data)); 2173 scoped_ptr<TemplateURL> sync_turl(new TemplateURL(data));
2175 syncer::SyncDataList list; 2174 syncer::SyncDataList list;
2176 list.push_back(TemplateURLService::CreateSyncDataFromTemplateURL(*sync_turl)); 2175 list.push_back(TemplateURLService::CreateSyncDataFromTemplateURL(*sync_turl));
2177 syncer::SyncMergeResult merge_result = model()->MergeDataAndStartSyncing( 2176 syncer::SyncMergeResult merge_result = model()->MergeDataAndStartSyncing(
2178 syncer::SEARCH_ENGINES, list, PassProcessor(), 2177 syncer::SEARCH_ENGINES, list, PassProcessor(),
2179 CreateAndPassSyncErrorFactory()); 2178 CreateAndPassSyncErrorFactory());
2180 2179
2181 const TemplateURL* result_turl = model()->GetTemplateURLForGUID("default"); 2180 const TemplateURL* result_turl = model()->GetTemplateURLForGUID("default");
2182 EXPECT_TRUE(result_turl); 2181 EXPECT_TRUE(result_turl);
2183 EXPECT_EQ(ASCIIToUTF16("new_kw"), result_turl->keyword()); 2182 EXPECT_EQ(ASCIIToUTF16("new_kw"), result_turl->keyword());
2184 EXPECT_EQ(ASCIIToUTF16("my name"), result_turl->short_name()); 2183 EXPECT_EQ(ASCIIToUTF16("my name"), result_turl->short_name());
2185 EXPECT_EQ(default_turl->url(), result_turl->url()); 2184 EXPECT_EQ(default_turl->url(), result_turl->url());
2186 } 2185 }
2187 2186
2188 TEST_F(TemplateURLServiceSyncTest, MergeNonEditedPrepopulatedEngine) { 2187 TEST_F(TemplateURLServiceSyncTest, MergeNonEditedPrepopulatedEngine) {
2189 scoped_ptr<TemplateURLData> default_turl( 2188 scoped_ptr<TemplateURLData> default_turl(
2190 TemplateURLPrepopulateData::GetPrepopulatedDefaultSearch(NULL)); 2189 TemplateURLPrepopulateData::GetPrepopulatedDefaultSearch(NULL));
2191 2190
2192 TemplateURLData data(*default_turl); 2191 TemplateURLData data(*default_turl);
2193 data.safe_for_autoreplace = true; // Can be replaced with built-in values. 2192 data.safe_for_autoreplace = true; // Can be replaced with built-in values.
2194 data.SetKeyword(ASCIIToUTF16("new_kw")); 2193 data.SetKeyword(ASCIIToUTF16("new_kw"));
2195 data.short_name = ASCIIToUTF16("my name"); 2194 data.short_name = ASCIIToUTF16("my name");
2196 data.SetURL("http://wrong.url.com?q={searchTerms}"); 2195 data.SetURL("http://wrong.url.com?q={searchTerms}");
2197 data.date_created = Time::FromTimeT(50); 2196 data.date_created = Time::FromTimeT(50);
2198 data.last_modified = Time::FromTimeT(50); 2197 data.last_modified = Time::FromTimeT(50);
2199 data.sync_guid = "default"; 2198 data.sync_guid = "default";
2200 model()->Add(new TemplateURL(NULL, data)); 2199 model()->Add(new TemplateURL(data));
2201 2200
2202 data.date_created = Time::FromTimeT(100); 2201 data.date_created = Time::FromTimeT(100);
2203 data.last_modified = Time::FromTimeT(100); 2202 data.last_modified = Time::FromTimeT(100);
2204 scoped_ptr<TemplateURL> sync_turl(new TemplateURL(NULL, data)); 2203 scoped_ptr<TemplateURL> sync_turl(new TemplateURL(data));
2205 syncer::SyncDataList list; 2204 syncer::SyncDataList list;
2206 list.push_back(TemplateURLService::CreateSyncDataFromTemplateURL(*sync_turl)); 2205 list.push_back(TemplateURLService::CreateSyncDataFromTemplateURL(*sync_turl));
2207 syncer::SyncMergeResult merge_result = model()->MergeDataAndStartSyncing( 2206 syncer::SyncMergeResult merge_result = model()->MergeDataAndStartSyncing(
2208 syncer::SEARCH_ENGINES, list, PassProcessor(), 2207 syncer::SEARCH_ENGINES, list, PassProcessor(),
2209 CreateAndPassSyncErrorFactory()); 2208 CreateAndPassSyncErrorFactory());
2210 2209
2211 const TemplateURL* result_turl = model()->GetTemplateURLForGUID("default"); 2210 const TemplateURL* result_turl = model()->GetTemplateURLForGUID("default");
2212 EXPECT_TRUE(result_turl); 2211 EXPECT_TRUE(result_turl);
2213 EXPECT_EQ(default_turl->keyword(), result_turl->keyword()); 2212 EXPECT_EQ(default_turl->keyword(), result_turl->keyword());
2214 EXPECT_EQ(default_turl->short_name, result_turl->short_name()); 2213 EXPECT_EQ(default_turl->short_name, result_turl->short_name());
(...skipping 14 matching lines...) Expand all
2229 const char kNewGUID[] = "newdefault"; 2228 const char kNewGUID[] = "newdefault";
2230 model()->Add(CreateTestTemplateURL(ASCIIToUTF16("what"), 2229 model()->Add(CreateTestTemplateURL(ASCIIToUTF16("what"),
2231 "http://thewhat.com/{searchTerms}", 2230 "http://thewhat.com/{searchTerms}",
2232 kNewGUID)); 2231 kNewGUID));
2233 model()->SetUserSelectedDefaultSearchProvider( 2232 model()->SetUserSelectedDefaultSearchProvider(
2234 model()->GetTemplateURLForGUID(kNewGUID)); 2233 model()->GetTemplateURLForGUID(kNewGUID));
2235 2234
2236 EXPECT_EQ(kNewGUID, profile_a()->GetTestingPrefService()->GetString( 2235 EXPECT_EQ(kNewGUID, profile_a()->GetTestingPrefService()->GetString(
2237 prefs::kSyncedDefaultSearchProviderGUID)); 2236 prefs::kSyncedDefaultSearchProviderGUID));
2238 } 2237 }
OLDNEW
« no previous file with comments | « chrome/browser/search_engines/template_url_service.cc ('k') | chrome/browser/search_engines/template_url_service_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698