diff options
author | pkasting@chromium.org <pkasting@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-04-07 01:31:54 +0000 |
---|---|---|
committer | pkasting@chromium.org <pkasting@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-04-07 01:31:54 +0000 |
commit | 573889f2660f7a961adac4b81caf632a467f2134 (patch) | |
tree | 9a3e74a378ef2d7bcea0a88cb2d7a20a4343090e /chrome/browser/autocomplete/autocomplete_unittest.cc | |
parent | 7d8b707e12ac0a18491c2810269167226cd95deb (diff) | |
download | chromium_src-573889f2660f7a961adac4b81caf632a467f2134.zip chromium_src-573889f2660f7a961adac4b81caf632a467f2134.tar.gz chromium_src-573889f2660f7a961adac4b81caf632a467f2134.tar.bz2 |
Reland r131019: Move most TemplateURL data members to a new struct, TemplateURLData. This allows us to eliminate the TemplateURL NULL constructor, most public non-const TemplateURL functions, and most TemplateURL friend declarations.
This is also a necessary precursor to changing TemplateURLService's APIs to convert most "const TemplateURL*" cases to "TemplateURL*", which I'll explain once I actually make the change.
There is some awkwardness here around keywords, as keyword autogeneration requires a TemplateURL but the state bits are kept on TemplateURLData. This will go away in the future when I remove keyword autogeneration from TemplateURL entirely.
This differs from r131019 in that it fixes a memory error in chrome/browser/search_engines/util.cc:MergeEnginesFromPrepopulateData() where when we updated the vector to contain a new TemplateURL*, we didn't also update |default_search_engine| to point at the new URL if necessary.
BUG=none
TEST=none
TBR=sky,mnissler,atwilson
Review URL: https://chromiumcodereview.appspot.com/10021008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@131224 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/autocomplete/autocomplete_unittest.cc')
-rw-r--r-- | chrome/browser/autocomplete/autocomplete_unittest.cc | 30 |
1 files changed, 16 insertions, 14 deletions
diff --git a/chrome/browser/autocomplete/autocomplete_unittest.cc b/chrome/browser/autocomplete/autocomplete_unittest.cc index 9e45132..9caf94b 100644 --- a/chrome/browser/autocomplete/autocomplete_unittest.cc +++ b/chrome/browser/autocomplete/autocomplete_unittest.cc @@ -182,8 +182,9 @@ void AutocompleteProviderTest:: profile_.CreateTemplateURLService(); // Reset the default TemplateURL. - TemplateURL* default_t_url = new TemplateURL(); - default_t_url->SetURL("http://defaultturl/{searchTerms}"); + TemplateURLData data; + data.SetURL("http://defaultturl/{searchTerms}"); + TemplateURL* default_t_url = new TemplateURL(data); TemplateURLService* turl_model = TemplateURLServiceFactory::GetForProfile(&profile_); turl_model->Add(default_t_url); @@ -192,10 +193,10 @@ void AutocompleteProviderTest:: ASSERT_NE(0, default_provider_id); // Create another TemplateURL for KeywordProvider. - TemplateURL* keyword_t_url = new TemplateURL(); - keyword_t_url->set_short_name(ASCIIToUTF16("k")); - keyword_t_url->set_keyword(ASCIIToUTF16("k")); - keyword_t_url->SetURL("http://keyword/{searchTerms}"); + data.short_name = ASCIIToUTF16("k"); + data.SetKeyword(ASCIIToUTF16("k")); + data.SetURL("http://keyword/{searchTerms}"); + TemplateURL* keyword_t_url = new TemplateURL(data); turl_model->Add(keyword_t_url); ASSERT_NE(0, keyword_t_url->id()); @@ -223,18 +224,19 @@ void AutocompleteProviderTest:: TemplateURLServiceFactory::GetForProfile(&profile_); // Create a TemplateURL for KeywordProvider. - TemplateURL* keyword_t_url = new TemplateURL(); - keyword_t_url->set_short_name(ASCIIToUTF16("foo.com")); - keyword_t_url->set_keyword(ASCIIToUTF16("foo.com")); - keyword_t_url->SetURL("http://foo.com/{searchTerms}"); + TemplateURLData data; + data.short_name = ASCIIToUTF16("foo.com"); + data.SetKeyword(ASCIIToUTF16("foo.com")); + data.SetURL("http://foo.com/{searchTerms}"); + TemplateURL* keyword_t_url = new TemplateURL(data); turl_model->Add(keyword_t_url); ASSERT_NE(0, keyword_t_url->id()); // Create another TemplateURL for KeywordProvider. - keyword_t_url = new TemplateURL(); - keyword_t_url->set_short_name(ASCIIToUTF16("bar.com")); - keyword_t_url->set_keyword(ASCIIToUTF16("bar.com")); - keyword_t_url->SetURL("http://bar.com/{searchTerms}"); + data.short_name = ASCIIToUTF16("bar.com"); + data.SetKeyword(ASCIIToUTF16("bar.com")); + data.SetURL("http://bar.com/{searchTerms}"); + keyword_t_url = new TemplateURL(data); turl_model->Add(keyword_t_url); ASSERT_NE(0, keyword_t_url->id()); |