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

Unified Diff: chrome/browser/search_engines/template_url_service_unittest.cc

Issue 2290503003: Remove use of stl_util in search_engines. (Closed)
Patch Set: ios for reals Created 4 years, 4 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/search_engines/template_url_service_unittest.cc
diff --git a/chrome/browser/search_engines/template_url_service_unittest.cc b/chrome/browser/search_engines/template_url_service_unittest.cc
index cb1655448478db489fba4b89fffffa88aefb4fa1..3572813541ee67533590678cc64c89ffaec4ff06 100644
--- a/chrome/browser/search_engines/template_url_service_unittest.cc
+++ b/chrome/browser/search_engines/template_url_service_unittest.cc
@@ -13,6 +13,7 @@
#include "base/bind_helpers.h"
#include "base/callback.h"
#include "base/macros.h"
+#include "base/memory/ptr_util.h"
#include "base/memory/ref_counted.h"
#include "base/run_loop.h"
#include "base/strings/string_split.h"
@@ -60,7 +61,7 @@ struct QueryHistoryCallbackImpl {
history::VisitVector visits;
};
-TemplateURL* CreateKeywordWithDate(
+std::unique_ptr<TemplateURL> CreateKeywordWithDate(
TemplateURLService* model,
const std::string& short_name,
const std::string& keyword,
@@ -87,7 +88,7 @@ TemplateURL* CreateKeywordWithDate(
encodings, ";", base::TRIM_WHITESPACE, base::SPLIT_WANT_ALL);
data.date_created = date_created;
data.last_modified = last_modified;
- return new TemplateURL(data);
+ return base::MakeUnique<TemplateURL>(data);
}
TemplateURL* AddKeywordWithDate(
@@ -102,10 +103,11 @@ TemplateURL* AddKeywordWithDate(
const std::string& encodings,
Time date_created,
Time last_modified) {
- TemplateURL* t_url = CreateKeywordWithDate(
- model, short_name, keyword, url, suggest_url, alternate_url,favicon_url,
+ std::unique_ptr<TemplateURL> t_url_ptr = CreateKeywordWithDate(
+ model, short_name, keyword, url, suggest_url, alternate_url, favicon_url,
safe_for_autoreplace, false, encodings, date_created, last_modified);
- model->Add(t_url);
+ TemplateURL* t_url = t_url_ptr.get();
+ model->Add(std::move(t_url_ptr));
EXPECT_NE(0, t_url->id());
return t_url;
}
@@ -160,9 +162,10 @@ class TemplateURLServiceTest : public testing::Test {
void AssertTimesEqual(const base::Time& expected, const base::Time& actual);
// Create an URL that appears to have been prepopulated, but won't be in the
- // current data. The caller owns the returned TemplateURL*.
- TemplateURL* CreatePreloadedTemplateURL(bool safe_for_autoreplace,
- int prepopulate_id);
+ // current data.
+ std::unique_ptr<TemplateURL> CreatePreloadedTemplateURL(
+ bool safe_for_autoreplace,
+ int prepopulate_id);
// Helper methods to make calling TemplateURLServiceTestUtil methods less
// visually noisy in the test code.
@@ -250,7 +253,7 @@ void TemplateURLServiceTest::AssertTimesEqual(const base::Time& expected,
ASSERT_LT((expected - actual).magnitude(), base::TimeDelta::FromSeconds(1));
}
-TemplateURL* TemplateURLServiceTest::CreatePreloadedTemplateURL(
+std::unique_ptr<TemplateURL> TemplateURLServiceTest::CreatePreloadedTemplateURL(
bool safe_for_autoreplace,
int prepopulate_id) {
TemplateURLData data;
@@ -264,7 +267,7 @@ TemplateURL* TemplateURLServiceTest::CreatePreloadedTemplateURL(
data.date_created = Time::FromTimeT(100);
data.last_modified = Time::FromTimeT(100);
data.prepopulate_id = prepopulate_id;
- return new TemplateURL(data);
+ return base::MakeUnique<TemplateURL>(data);
}
void TemplateURLServiceTest::VerifyObserverCount(int expected_changed_count) {
@@ -298,8 +301,9 @@ TEST_F(TemplateURLServiceTest, AddUpdateRemove) {
data.date_created = Time::FromTimeT(100);
data.last_modified = Time::FromTimeT(100);
data.sync_guid = "00000000-0000-0000-0000-000000000001";
- TemplateURL* t_url = new TemplateURL(data);
- model()->Add(t_url);
+ std::unique_ptr<TemplateURL> t_url_ptr = base::MakeUnique<TemplateURL>(data);
+ TemplateURL* t_url = t_url_ptr.get();
+ model()->Add(std::move(t_url_ptr));
ASSERT_TRUE(model()->CanAddAutogeneratedKeyword(ASCIIToUTF16("keyword"),
GURL(), NULL));
VerifyObserverCount(1);
@@ -309,7 +313,8 @@ TEST_F(TemplateURLServiceTest, AddUpdateRemove) {
// We need to make a second copy as the model takes ownership of |t_url| and
// will delete it. We have to do this after calling Add() since that gives
// |t_url| its ID.
- std::unique_ptr<TemplateURL> cloned_url(new TemplateURL(t_url->data()));
+ std::unique_ptr<TemplateURL> cloned_url =
+ base::MakeUnique<TemplateURL>(t_url->data());
// Reload the model to verify it was actually saved to the database.
test_util()->ResetModel(true);
@@ -373,8 +378,9 @@ TEST_F(TemplateURLServiceTest, AddSameKeyword) {
data.SetKeyword(ASCIIToUTF16("keyword"));
data.SetURL("http://test2");
data.safe_for_autoreplace = false;
- TemplateURL* t_url = new TemplateURL(data);
- model()->Add(t_url);
+ std::unique_ptr<TemplateURL> t_url_ptr = base::MakeUnique<TemplateURL>(data);
+ TemplateURL* t_url = t_url_ptr.get();
+ model()->Add(std::move(t_url_ptr));
// Because the old TemplateURL was replaceable and the new one wasn't, the new
// one should have replaced the old.
@@ -389,7 +395,7 @@ TEST_F(TemplateURLServiceTest, AddSameKeyword) {
data.SetShortName(ASCIIToUTF16("third"));
data.SetURL("http://test3");
data.safe_for_autoreplace = true;
- model()->Add(new TemplateURL(data));
+ model()->Add(base::MakeUnique<TemplateURL>(data));
VerifyObserverCount(0);
EXPECT_EQ(t_url, model()->GetTemplateURLForKeyword(ASCIIToUTF16("keyword")));
EXPECT_EQ(ASCIIToUTF16("second"), t_url->short_name());
@@ -401,8 +407,9 @@ TEST_F(TemplateURLServiceTest, AddSameKeyword) {
data.SetShortName(ASCIIToUTF16("fourth"));
data.SetURL("http://test4");
data.safe_for_autoreplace = false;
- TemplateURL* t_url2 = new TemplateURL(data);
- model()->Add(t_url2);
+ std::unique_ptr<TemplateURL> t_url2_ptr = base::MakeUnique<TemplateURL>(data);
+ TemplateURL* t_url2 = t_url2_ptr.get();
+ model()->Add(std::move(t_url2_ptr));
VerifyObserverCount(1);
EXPECT_EQ(t_url2, model()->GetTemplateURLForKeyword(ASCIIToUTF16("keyword")));
EXPECT_EQ(ASCIIToUTF16("fourth"), t_url2->short_name());
@@ -474,8 +481,9 @@ TEST_F(TemplateURLServiceTest, AddSameKeywordWithExtensionPresent) {
data.SetKeyword(ASCIIToUTF16("keyword"));
data.SetURL("http://test3");
data.safe_for_autoreplace = true;
- TemplateURL* t_url = new TemplateURL(data);
- model()->Add(t_url);
+ std::unique_ptr<TemplateURL> t_url_ptr = base::MakeUnique<TemplateURL>(data);
+ TemplateURL* t_url = t_url_ptr.get();
+ model()->Add(std::move(t_url_ptr));
EXPECT_EQ(extension,
model()->GetTemplateURLForKeyword(ASCIIToUTF16("keyword")));
EXPECT_EQ(t_url, model()->GetTemplateURLForHost("test3"));
@@ -486,8 +494,9 @@ TEST_F(TemplateURLServiceTest, AddSameKeywordWithExtensionPresent) {
data.SetShortName(ASCIIToUTF16("name2"));
data.SetURL("http://test4");
data.safe_for_autoreplace = false;
- TemplateURL* t_url2 = new TemplateURL(data);
- model()->Add(t_url2);
+ std::unique_ptr<TemplateURL> t_url2_ptr = base::MakeUnique<TemplateURL>(data);
+ TemplateURL* t_url2 = t_url2_ptr.get();
+ model()->Add(std::move(t_url2_ptr));
EXPECT_EQ(t_url2,
model()->GetTemplateURLForKeyword(ASCIIToUTF16("keyword")));
}
@@ -632,8 +641,9 @@ TEST_F(TemplateURLServiceTest, Reset) {
data.favicon_url = GURL("http://favicon.url");
data.date_created = Time::FromTimeT(100);
data.last_modified = Time::FromTimeT(100);
- TemplateURL* t_url = new TemplateURL(data);
- model()->Add(t_url);
+ std::unique_ptr<TemplateURL> t_url_ptr = base::MakeUnique<TemplateURL>(data);
+ TemplateURL* t_url = t_url_ptr.get();
+ model()->Add(std::move(t_url_ptr));
VerifyObserverCount(1);
base::RunLoop().RunUntilIdle();
@@ -657,7 +667,8 @@ TEST_F(TemplateURLServiceTest, Reset) {
ASSERT_TRUE(
model()->GetTemplateURLForKeyword(ASCIIToUTF16("keyword")) == NULL);
- std::unique_ptr<TemplateURL> cloned_url(new TemplateURL(t_url->data()));
+ std::unique_ptr<TemplateURL> cloned_url(
+ base::MakeUnique<TemplateURL>(t_url->data()));
// Reload the model from the database and make sure the change took.
test_util()->ResetModel(true);
@@ -686,7 +697,8 @@ TEST_F(TemplateURLServiceTest, DefaultSearchProvider) {
VerifyObserverCount(1);
base::RunLoop().RunUntilIdle();
- std::unique_ptr<TemplateURL> cloned_url(new TemplateURL(t_url->data()));
+ std::unique_ptr<TemplateURL> cloned_url(
+ base::MakeUnique<TemplateURL>(t_url->data()));
// Make sure when we reload we get a default search provider.
test_util()->ResetModel(true);
@@ -758,13 +770,15 @@ TEST_F(TemplateURLServiceTest, DefaultSearchProviderLoadedFromPrefs) {
data.instant_url = "http://instant";
data.date_created = Time::FromTimeT(100);
data.last_modified = Time::FromTimeT(100);
- TemplateURL* t_url = new TemplateURL(data);
- model()->Add(t_url);
+ std::unique_ptr<TemplateURL> t_url_ptr = base::MakeUnique<TemplateURL>(data);
+ TemplateURL* t_url = t_url_ptr.get();
+ model()->Add(std::move(t_url_ptr));
const TemplateURLID id = t_url->id();
model()->SetUserSelectedDefaultSearchProvider(t_url);
base::RunLoop().RunUntilIdle();
- std::unique_ptr<TemplateURL> cloned_url(new TemplateURL(t_url->data()));
+ std::unique_ptr<TemplateURL> cloned_url(
+ base::MakeUnique<TemplateURL>(t_url->data()));
// Reset the model and don't load it. The template url we set as the default
// should be pulled from prefs now.
@@ -1040,9 +1054,8 @@ TEST_F(TemplateURLServiceTest, GenerateVisitOnKeyword) {
TEST_F(TemplateURLServiceTest, LoadDeletesUnusedProvider) {
// Create a preloaded template url. Add it to a loaded model and wait for the
// saves to finish.
- TemplateURL* t_url = CreatePreloadedTemplateURL(true, 999999);
test_util()->ChangeModelToLoadState();
- model()->Add(t_url);
+ model()->Add(CreatePreloadedTemplateURL(true, 999999));
ASSERT_TRUE(
model()->GetTemplateURLForKeyword(ASCIIToUTF16("unittest")) != NULL);
base::RunLoop().RunUntilIdle();
@@ -1066,12 +1079,15 @@ TEST_F(TemplateURLServiceTest, LoadDeletesUnusedProvider) {
// longer exist in the prepopulate data if it has been modified by the user.
TEST_F(TemplateURLServiceTest, LoadRetainsModifiedProvider) {
// Create a preloaded template url and add it to a loaded model.
- TemplateURL* t_url = CreatePreloadedTemplateURL(false, 999999);
+ std::unique_ptr<TemplateURL> t_url_ptr =
+ CreatePreloadedTemplateURL(false, 999999);
+ TemplateURL* t_url = t_url_ptr.get();
test_util()->ChangeModelToLoadState();
- model()->Add(t_url);
+ model()->Add(std::move(t_url_ptr));
// Do the copy after t_url is added so that the id is set.
- std::unique_ptr<TemplateURL> cloned_url(new TemplateURL(t_url->data()));
+ std::unique_ptr<TemplateURL> cloned_url(
Peter Kasting 2016/08/31 04:12:55 Nit: () -> =
Avi (use Gerrit) 2016/09/01 00:34:26 Done.
+ base::MakeUnique<TemplateURL>(t_url->data()));
ASSERT_EQ(t_url, model()->GetTemplateURLForKeyword(ASCIIToUTF16("unittest")));
// Wait for any saves to finish.
@@ -1122,13 +1138,16 @@ TEST_F(TemplateURLServiceTest, LoadRetainsDefaultProvider) {
// Set the default search provider to a preloaded template url which
// is not in the current set of preloaded template urls and save
// the result.
- TemplateURL* t_url = CreatePreloadedTemplateURL(true, 999999);
+ std::unique_ptr<TemplateURL> t_url_ptr =
+ CreatePreloadedTemplateURL(true, 999999);
+ TemplateURL* t_url = t_url_ptr.get();
test_util()->ChangeModelToLoadState();
- model()->Add(t_url);
+ model()->Add(std::move(t_url_ptr));
model()->SetUserSelectedDefaultSearchProvider(t_url);
// Do the copy after t_url is added and set as default so that its
// internal state is correct.
- std::unique_ptr<TemplateURL> cloned_url(new TemplateURL(t_url->data()));
+ std::unique_ptr<TemplateURL> cloned_url(
Peter Kasting 2016/08/31 04:12:56 Nit: () -> =
Avi (use Gerrit) 2016/09/01 00:34:26 Done.
+ base::MakeUnique<TemplateURL>(t_url->data()));
ASSERT_EQ(t_url, model()->GetTemplateURLForKeyword(ASCIIToUTF16("unittest")));
ASSERT_EQ(t_url, model()->GetDefaultSearchProvider());
@@ -1345,8 +1364,7 @@ TEST_F(TemplateURLServiceTest, PatchEmptySyncGUID) {
data.SetKeyword(ASCIIToUTF16("keyword"));
data.SetURL("http://www.google.com/foo/bar");
data.sync_guid.clear();
- TemplateURL* t_url = new TemplateURL(data);
- model()->Add(t_url);
+ model()->Add(base::MakeUnique<TemplateURL>(data));
VerifyObserverCount(1);
base::RunLoop().RunUntilIdle();
@@ -1382,8 +1400,7 @@ TEST_F(TemplateURLServiceTest, DuplicateInputEncodings) {
data.input_encodings.push_back("UTF-16");
data.input_encodings.push_back("Big5");
data.input_encodings.push_back("Windows-1252");
- TemplateURL* t_url = new TemplateURL(data);
- model()->Add(t_url);
+ model()->Add(base::MakeUnique<TemplateURL>(data));
VerifyObserverCount(1);
base::RunLoop().RunUntilIdle();
@@ -1412,15 +1429,17 @@ TEST_F(TemplateURLServiceTest, DefaultExtensionEngine) {
model()->SetUserSelectedDefaultSearchProvider(user_dse);
EXPECT_EQ(user_dse, model()->GetDefaultSearchProvider());
- TemplateURL* ext_dse = CreateKeywordWithDate(
+ std::unique_ptr<TemplateURL> ext_dse_ptr = CreateKeywordWithDate(
model(), "ext", "ext", "http://www.search.com/s?q={searchTerms}",
- std::string(), std::string(), std::string(),
- true, true, "UTF-8", Time(), Time());
+ std::string(), std::string(), std::string(), true, true, "UTF-8", Time(),
+ Time());
+ TemplateURL* ext_dse = ext_dse_ptr.get();
std::unique_ptr<TemplateURL::AssociatedExtensionInfo> extension_info(
new TemplateURL::AssociatedExtensionInfo(
TemplateURL::NORMAL_CONTROLLED_BY_EXTENSION, "ext"));
extension_info->wants_to_be_default_engine = true;
- model()->AddExtensionControlledTURL(ext_dse, std::move(extension_info));
+ model()->AddExtensionControlledTURL(std::move(ext_dse_ptr),
+ std::move(extension_info));
EXPECT_EQ(ext_dse, model()->GetDefaultSearchProvider());
model()->RemoveExtensionControlledTURL(
@@ -1438,25 +1457,29 @@ TEST_F(TemplateURLServiceTest, ExtensionEnginesNotPersist) {
model()->SetUserSelectedDefaultSearchProvider(user_dse);
EXPECT_EQ(user_dse, model()->GetDefaultSearchProvider());
- TemplateURL* ext_dse = CreateKeywordWithDate(
+ std::unique_ptr<TemplateURL> ext_dse_ptr = CreateKeywordWithDate(
model(), "ext1", "ext1", "http://www.ext1.com/s?q={searchTerms}",
- std::string(), std::string(), std::string(),
- true, false, "UTF-8", Time(), Time());
+ std::string(), std::string(), std::string(), true, false, "UTF-8", Time(),
+ Time());
+ TemplateURL* ext_dse = ext_dse_ptr.get();
std::unique_ptr<TemplateURL::AssociatedExtensionInfo> extension_info(
new TemplateURL::AssociatedExtensionInfo(
TemplateURL::NORMAL_CONTROLLED_BY_EXTENSION, "ext1"));
extension_info->wants_to_be_default_engine = false;
- model()->AddExtensionControlledTURL(ext_dse, std::move(extension_info));
+ model()->AddExtensionControlledTURL(std::move(ext_dse_ptr),
+ std::move(extension_info));
EXPECT_EQ(user_dse, model()->GetDefaultSearchProvider());
- ext_dse = CreateKeywordWithDate(
+ ext_dse_ptr = CreateKeywordWithDate(
model(), "ext2", "ext2", "http://www.ext2.com/s?q={searchTerms}",
- std::string(), std::string(), std::string(),
- true, true, "UTF-8", Time(), Time());
+ std::string(), std::string(), std::string(), true, true, "UTF-8", Time(),
+ Time());
+ ext_dse = ext_dse_ptr.get();
extension_info.reset(new TemplateURL::AssociatedExtensionInfo(
TemplateURL::NORMAL_CONTROLLED_BY_EXTENSION, "ext2"));
extension_info->wants_to_be_default_engine = true;
- model()->AddExtensionControlledTURL(ext_dse, std::move(extension_info));
+ model()->AddExtensionControlledTURL(std::move(ext_dse_ptr),
+ std::move(extension_info));
EXPECT_EQ(ext_dse, model()->GetDefaultSearchProvider());
test_util()->ResetModel(true);
@@ -1496,15 +1519,17 @@ TEST_F(TemplateURLServiceTest, ExtensionEngineVsPolicy) {
model()->GetDefaultSearchProvider();
ExpectSimilar(expected_managed_default.get(), actual_managed_default);
- TemplateURL* ext_dse = CreateKeywordWithDate(
+ std::unique_ptr<TemplateURL> ext_dse_ptr = CreateKeywordWithDate(
model(), "ext1", "ext1", "http://www.ext1.com/s?q={searchTerms}",
- std::string(), std::string(), std::string(),
- true, true, "UTF-8", Time(), Time());
+ std::string(), std::string(), std::string(), true, true, "UTF-8", Time(),
+ Time());
+ TemplateURL* ext_dse = ext_dse_ptr.get();
std::unique_ptr<TemplateURL::AssociatedExtensionInfo> extension_info(
new TemplateURL::AssociatedExtensionInfo(
TemplateURL::NORMAL_CONTROLLED_BY_EXTENSION, "ext1"));
extension_info->wants_to_be_default_engine = true;
- model()->AddExtensionControlledTURL(ext_dse, std::move(extension_info));
+ model()->AddExtensionControlledTURL(std::move(ext_dse_ptr),
+ std::move(extension_info));
EXPECT_EQ(ext_dse, model()->GetTemplateURLForKeyword(ASCIIToUTF16("ext1")));
EXPECT_TRUE(model()->is_default_search_managed());
actual_managed_default = model()->GetDefaultSearchProvider();

Powered by Google App Engine
This is Rietveld 408576698