OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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/message_loop.h" | 6 #include "base/message_loop.h" |
7 #include "base/path_service.h" | 7 #include "base/path_service.h" |
8 #include "base/scoped_ptr.h" | 8 #include "base/scoped_ptr.h" |
| 9 #include "base/utf_string_conversions.h" |
9 #include "chrome/browser/search_engines/template_url.h" | 10 #include "chrome/browser/search_engines/template_url.h" |
10 #include "chrome/browser/search_engines/template_url_fetcher.h" | 11 #include "chrome/browser/search_engines/template_url_fetcher.h" |
11 #include "chrome/browser/search_engines/template_url_fetcher_callbacks.h" | 12 #include "chrome/browser/search_engines/template_url_fetcher_callbacks.h" |
12 #include "chrome/browser/search_engines/template_url_model.h" | 13 #include "chrome/browser/search_engines/template_url_model.h" |
13 #include "chrome/browser/search_engines/template_url_model_test_util.h" | 14 #include "chrome/browser/search_engines/template_url_model_test_util.h" |
14 #include "chrome/common/chrome_paths.h" | 15 #include "chrome/common/chrome_paths.h" |
15 #include "chrome/test/testing_profile.h" | 16 #include "chrome/test/testing_profile.h" |
16 #include "googleurl/src/gurl.h" | 17 #include "googleurl/src/gurl.h" |
17 #include "net/test/test_server.h" | 18 #include "net/test/test_server.h" |
18 #include "testing/gtest/include/gtest/gtest.h" | 19 #include "testing/gtest/include/gtest/gtest.h" |
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
69 // this class, these methods handle those calls for the test.) | 70 // this class, these methods handle those calls for the test.) |
70 virtual void ConfirmSetDefaultSearchProvider( | 71 virtual void ConfirmSetDefaultSearchProvider( |
71 TemplateURL* template_url, | 72 TemplateURL* template_url, |
72 TemplateURLModel* template_url_model); | 73 TemplateURLModel* template_url_model); |
73 virtual void ConfirmAddSearchProvider( | 74 virtual void ConfirmAddSearchProvider( |
74 TemplateURL* template_url, | 75 TemplateURL* template_url, |
75 Profile* profile); | 76 Profile* profile); |
76 | 77 |
77 protected: | 78 protected: |
78 // Schedules the download of the url. | 79 // Schedules the download of the url. |
79 void StartDownload(const std::wstring& keyword, | 80 void StartDownload(const string16& keyword, |
80 const std::string& osdd_file_name, | 81 const std::string& osdd_file_name, |
81 TemplateURLFetcher::ProviderType provider_type, | 82 TemplateURLFetcher::ProviderType provider_type, |
82 bool check_that_file_exists); | 83 bool check_that_file_exists); |
83 | 84 |
84 // Waits for any downloads to finish. | 85 // Waits for any downloads to finish. |
85 void WaitForDownloadToFinish(); | 86 void WaitForDownloadToFinish(); |
86 | 87 |
87 TemplateURLModelTestUtil test_util_; | 88 TemplateURLModelTestUtil test_util_; |
88 net::TestServer test_server_; | 89 net::TestServer test_server_; |
89 | 90 |
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
147 } | 148 } |
148 | 149 |
149 void TemplateURLFetcherTest::ConfirmAddSearchProvider( | 150 void TemplateURLFetcherTest::ConfirmAddSearchProvider( |
150 TemplateURL* template_url, | 151 TemplateURL* template_url, |
151 Profile* profile) { | 152 Profile* profile) { |
152 last_callback_template_url_.reset(template_url); | 153 last_callback_template_url_.reset(template_url); |
153 add_provider_called_++; | 154 add_provider_called_++; |
154 } | 155 } |
155 | 156 |
156 void TemplateURLFetcherTest::StartDownload( | 157 void TemplateURLFetcherTest::StartDownload( |
157 const std::wstring& keyword, | 158 const string16& keyword, |
158 const std::string& osdd_file_name, | 159 const std::string& osdd_file_name, |
159 TemplateURLFetcher::ProviderType provider_type, | 160 TemplateURLFetcher::ProviderType provider_type, |
160 bool check_that_file_exists) { | 161 bool check_that_file_exists) { |
161 | 162 |
162 if (check_that_file_exists) { | 163 if (check_that_file_exists) { |
163 FilePath osdd_full_path; | 164 FilePath osdd_full_path; |
164 ASSERT_TRUE(PathService::Get(chrome::DIR_TEST_DATA, &osdd_full_path)); | 165 ASSERT_TRUE(PathService::Get(chrome::DIR_TEST_DATA, &osdd_full_path)); |
165 osdd_full_path = osdd_full_path.AppendASCII(osdd_file_name); | 166 osdd_full_path = osdd_full_path.AppendASCII(osdd_file_name); |
166 ASSERT_TRUE(file_util::PathExists(osdd_full_path)); | 167 ASSERT_TRUE(file_util::PathExists(osdd_full_path)); |
167 ASSERT_FALSE(file_util::DirectoryExists(osdd_full_path)); | 168 ASSERT_FALSE(file_util::DirectoryExists(osdd_full_path)); |
168 } | 169 } |
169 | 170 |
170 // Start the fetch. | 171 // Start the fetch. |
171 GURL osdd_url = test_server_.GetURL("files/" + osdd_file_name); | 172 GURL osdd_url = test_server_.GetURL("files/" + osdd_file_name); |
172 GURL favicon_url; | 173 GURL favicon_url; |
173 test_util_.profile()->GetTemplateURLFetcher()->ScheduleDownload( | 174 test_util_.profile()->GetTemplateURLFetcher()->ScheduleDownload( |
174 keyword, osdd_url, favicon_url, new TemplateURLFetcherTestCallbacks(this), | 175 keyword, osdd_url, favicon_url, new TemplateURLFetcherTestCallbacks(this), |
175 provider_type); | 176 provider_type); |
176 } | 177 } |
177 | 178 |
178 void TemplateURLFetcherTest::WaitForDownloadToFinish() { | 179 void TemplateURLFetcherTest::WaitForDownloadToFinish() { |
179 ASSERT_FALSE(waiting_for_download_); | 180 ASSERT_FALSE(waiting_for_download_); |
180 waiting_for_download_ = true; | 181 waiting_for_download_ = true; |
181 MessageLoop::current()->Run(); | 182 MessageLoop::current()->Run(); |
182 waiting_for_download_ = false; | 183 waiting_for_download_ = false; |
183 } | 184 } |
184 | 185 |
185 TEST_F(TemplateURLFetcherTest, BasicAutodetectedTest) { | 186 TEST_F(TemplateURLFetcherTest, BasicAutodetectedTest) { |
186 std::wstring keyword(L"test"); | 187 string16 keyword(ASCIIToUTF16("test")); |
187 | 188 |
188 test_util_.ChangeModelToLoadState(); | 189 test_util_.ChangeModelToLoadState(); |
189 ASSERT_FALSE(test_util_.model()->GetTemplateURLForKeyword(keyword)); | 190 ASSERT_FALSE(test_util_.model()->GetTemplateURLForKeyword(keyword)); |
190 | 191 |
191 std::string osdd_file_name("simple_open_search.xml"); | 192 std::string osdd_file_name("simple_open_search.xml"); |
192 StartDownload(keyword, osdd_file_name, | 193 StartDownload(keyword, osdd_file_name, |
193 TemplateURLFetcher::AUTODETECTED_PROVIDER, true); | 194 TemplateURLFetcher::AUTODETECTED_PROVIDER, true); |
194 ASSERT_EQ(0, set_default_called_); | 195 ASSERT_EQ(0, set_default_called_); |
195 ASSERT_EQ(0, add_provider_called_); | 196 ASSERT_EQ(0, add_provider_called_); |
196 ASSERT_EQ(0, callbacks_destroyed_); | 197 ASSERT_EQ(0, callbacks_destroyed_); |
197 | 198 |
198 WaitForDownloadToFinish(); | 199 WaitForDownloadToFinish(); |
199 ASSERT_EQ(0, set_default_called_); | 200 ASSERT_EQ(0, set_default_called_); |
200 ASSERT_EQ(0, add_provider_called_); | 201 ASSERT_EQ(0, add_provider_called_); |
201 ASSERT_EQ(1, callbacks_destroyed_); | 202 ASSERT_EQ(1, callbacks_destroyed_); |
202 | 203 |
203 const TemplateURL* t_url = test_util_.model()->GetTemplateURLForKeyword( | 204 const TemplateURL* t_url = test_util_.model()->GetTemplateURLForKeyword( |
204 keyword); | 205 keyword); |
205 ASSERT_TRUE(t_url); | 206 ASSERT_TRUE(t_url); |
206 EXPECT_STREQ(L"http://example.com/%s/other_stuff", | 207 EXPECT_EQ(ASCIIToUTF16("http://example.com/%s/other_stuff"), |
207 t_url->url()->DisplayURL().c_str()); | 208 t_url->url()->DisplayURL()); |
208 EXPECT_TRUE(t_url->safe_for_autoreplace()); | 209 EXPECT_TRUE(t_url->safe_for_autoreplace()); |
209 } | 210 } |
210 | 211 |
211 TEST_F(TemplateURLFetcherTest, DuplicatesThrownAway) { | 212 TEST_F(TemplateURLFetcherTest, DuplicatesThrownAway) { |
212 std::wstring keyword(L"test"); | 213 string16 keyword(ASCIIToUTF16("test")); |
213 | 214 |
214 test_util_.ChangeModelToLoadState(); | 215 test_util_.ChangeModelToLoadState(); |
215 ASSERT_FALSE(test_util_.model()->GetTemplateURLForKeyword(keyword)); | 216 ASSERT_FALSE(test_util_.model()->GetTemplateURLForKeyword(keyword)); |
216 | 217 |
217 std::string osdd_file_name("simple_open_search.xml"); | 218 std::string osdd_file_name("simple_open_search.xml"); |
218 StartDownload(keyword, osdd_file_name, | 219 StartDownload(keyword, osdd_file_name, |
219 TemplateURLFetcher::AUTODETECTED_PROVIDER, true); | 220 TemplateURLFetcher::AUTODETECTED_PROVIDER, true); |
220 ASSERT_EQ(0, set_default_called_); | 221 ASSERT_EQ(0, set_default_called_); |
221 ASSERT_EQ(0, add_provider_called_); | 222 ASSERT_EQ(0, add_provider_called_); |
222 ASSERT_EQ(0, callbacks_destroyed_); | 223 ASSERT_EQ(0, callbacks_destroyed_); |
223 | 224 |
224 struct { | 225 struct { |
225 std::string description; | 226 std::string description; |
226 std::string osdd_file_name; | 227 std::string osdd_file_name; |
227 std::wstring keyword; | 228 string16 keyword; |
228 TemplateURLFetcher::ProviderType provider_type; | 229 TemplateURLFetcher::ProviderType provider_type; |
229 } test_cases[] = { | 230 } test_cases[] = { |
230 { "Duplicate keyword and osdd url with autodetected provider.", | 231 { "Duplicate keyword and osdd url with autodetected provider.", |
231 osdd_file_name, keyword, TemplateURLFetcher::AUTODETECTED_PROVIDER }, | 232 osdd_file_name, keyword, TemplateURLFetcher::AUTODETECTED_PROVIDER }, |
232 { "Duplicate keyword and osdd url with explicit provider.", | 233 { "Duplicate keyword and osdd url with explicit provider.", |
233 osdd_file_name, keyword, TemplateURLFetcher::EXPLICIT_PROVIDER }, | 234 osdd_file_name, keyword, TemplateURLFetcher::EXPLICIT_PROVIDER }, |
234 { "Duplicate osdd url with explicit provider.", | 235 { "Duplicate osdd url with explicit provider.", |
235 osdd_file_name, keyword + L"1", TemplateURLFetcher::EXPLICIT_PROVIDER }, | 236 osdd_file_name, keyword + ASCIIToUTF16("1"), |
| 237 TemplateURLFetcher::EXPLICIT_PROVIDER }, |
236 { "Duplicate keyword with explicit provider.", | 238 { "Duplicate keyword with explicit provider.", |
237 osdd_file_name + "1", keyword, TemplateURLFetcher::EXPLICIT_PROVIDER } | 239 osdd_file_name + "1", keyword, TemplateURLFetcher::EXPLICIT_PROVIDER } |
238 }; | 240 }; |
239 | 241 |
240 for (size_t i = 0; i < ARRAYSIZE_UNSAFE(test_cases); ++i) { | 242 for (size_t i = 0; i < ARRAYSIZE_UNSAFE(test_cases); ++i) { |
241 StartDownload(test_cases[i].keyword, test_cases[i].osdd_file_name, | 243 StartDownload(test_cases[i].keyword, test_cases[i].osdd_file_name, |
242 test_cases[i].provider_type, false); | 244 test_cases[i].provider_type, false); |
243 ASSERT_EQ( | 245 ASSERT_EQ( |
244 1, | 246 1, |
245 test_util_.profile()->GetTemplateURLFetcher()->requests_count()) << | 247 test_util_.profile()->GetTemplateURLFetcher()->requests_count()) << |
246 test_cases[i].description; | 248 test_cases[i].description; |
247 ASSERT_EQ(i + 1, static_cast<size_t>(callbacks_destroyed_)); | 249 ASSERT_EQ(i + 1, static_cast<size_t>(callbacks_destroyed_)); |
248 } | 250 } |
249 | 251 |
250 WaitForDownloadToFinish(); | 252 WaitForDownloadToFinish(); |
251 ASSERT_EQ(1 + ARRAYSIZE_UNSAFE(test_cases), | 253 ASSERT_EQ(1 + ARRAYSIZE_UNSAFE(test_cases), |
252 static_cast<size_t>(callbacks_destroyed_)); | 254 static_cast<size_t>(callbacks_destroyed_)); |
253 ASSERT_EQ(0, set_default_called_); | 255 ASSERT_EQ(0, set_default_called_); |
254 ASSERT_EQ(0, add_provider_called_); | 256 ASSERT_EQ(0, add_provider_called_); |
255 } | 257 } |
256 | 258 |
257 TEST_F(TemplateURLFetcherTest, BasicExplicitTest) { | 259 TEST_F(TemplateURLFetcherTest, BasicExplicitTest) { |
258 std::wstring keyword(L"test"); | 260 string16 keyword(ASCIIToUTF16("test")); |
259 | 261 |
260 test_util_.ChangeModelToLoadState(); | 262 test_util_.ChangeModelToLoadState(); |
261 ASSERT_FALSE(test_util_.model()->GetTemplateURLForKeyword(keyword)); | 263 ASSERT_FALSE(test_util_.model()->GetTemplateURLForKeyword(keyword)); |
262 | 264 |
263 std::string osdd_file_name("simple_open_search.xml"); | 265 std::string osdd_file_name("simple_open_search.xml"); |
264 StartDownload(keyword, osdd_file_name, | 266 StartDownload(keyword, osdd_file_name, |
265 TemplateURLFetcher::EXPLICIT_PROVIDER, true); | 267 TemplateURLFetcher::EXPLICIT_PROVIDER, true); |
266 ASSERT_EQ(0, set_default_called_); | 268 ASSERT_EQ(0, set_default_called_); |
267 ASSERT_EQ(0, add_provider_called_); | 269 ASSERT_EQ(0, add_provider_called_); |
268 ASSERT_EQ(0, callbacks_destroyed_); | 270 ASSERT_EQ(0, callbacks_destroyed_); |
269 | 271 |
270 WaitForDownloadToFinish(); | 272 WaitForDownloadToFinish(); |
271 ASSERT_EQ(0, set_default_called_); | 273 ASSERT_EQ(0, set_default_called_); |
272 ASSERT_EQ(1, add_provider_called_); | 274 ASSERT_EQ(1, add_provider_called_); |
273 ASSERT_EQ(1, callbacks_destroyed_); | 275 ASSERT_EQ(1, callbacks_destroyed_); |
274 | 276 |
275 ASSERT_TRUE(last_callback_template_url_.get()); | 277 ASSERT_TRUE(last_callback_template_url_.get()); |
276 EXPECT_STREQ(L"http://example.com/%s/other_stuff", | 278 EXPECT_EQ(ASCIIToUTF16("http://example.com/%s/other_stuff"), |
277 last_callback_template_url_->url()->DisplayURL().c_str()); | 279 last_callback_template_url_->url()->DisplayURL()); |
278 EXPECT_FALSE(last_callback_template_url_->safe_for_autoreplace()); | 280 EXPECT_FALSE(last_callback_template_url_->safe_for_autoreplace()); |
279 } | 281 } |
280 | 282 |
281 TEST_F(TemplateURLFetcherTest, BasicExplicitDefaultTest) { | 283 TEST_F(TemplateURLFetcherTest, BasicExplicitDefaultTest) { |
282 std::wstring keyword(L"test"); | 284 string16 keyword(ASCIIToUTF16("test")); |
283 | 285 |
284 test_util_.ChangeModelToLoadState(); | 286 test_util_.ChangeModelToLoadState(); |
285 ASSERT_FALSE(test_util_.model()->GetTemplateURLForKeyword(keyword)); | 287 ASSERT_FALSE(test_util_.model()->GetTemplateURLForKeyword(keyword)); |
286 | 288 |
287 std::string osdd_file_name("simple_open_search.xml"); | 289 std::string osdd_file_name("simple_open_search.xml"); |
288 StartDownload(keyword, osdd_file_name, | 290 StartDownload(keyword, osdd_file_name, |
289 TemplateURLFetcher::EXPLICIT_DEFAULT_PROVIDER, true); | 291 TemplateURLFetcher::EXPLICIT_DEFAULT_PROVIDER, true); |
290 ASSERT_EQ(0, set_default_called_); | 292 ASSERT_EQ(0, set_default_called_); |
291 ASSERT_EQ(0, add_provider_called_); | 293 ASSERT_EQ(0, add_provider_called_); |
292 ASSERT_EQ(0, callbacks_destroyed_); | 294 ASSERT_EQ(0, callbacks_destroyed_); |
293 | 295 |
294 WaitForDownloadToFinish(); | 296 WaitForDownloadToFinish(); |
295 ASSERT_EQ(1, set_default_called_); | 297 ASSERT_EQ(1, set_default_called_); |
296 ASSERT_EQ(0, add_provider_called_); | 298 ASSERT_EQ(0, add_provider_called_); |
297 ASSERT_EQ(1, callbacks_destroyed_); | 299 ASSERT_EQ(1, callbacks_destroyed_); |
298 | 300 |
299 ASSERT_TRUE(last_callback_template_url_.get()); | 301 ASSERT_TRUE(last_callback_template_url_.get()); |
300 EXPECT_STREQ(L"http://example.com/%s/other_stuff", | 302 EXPECT_EQ(ASCIIToUTF16("http://example.com/%s/other_stuff"), |
301 last_callback_template_url_->url()->DisplayURL().c_str()); | 303 last_callback_template_url_->url()->DisplayURL()); |
302 EXPECT_FALSE(last_callback_template_url_->safe_for_autoreplace()); | 304 EXPECT_FALSE(last_callback_template_url_->safe_for_autoreplace()); |
303 } | 305 } |
304 | 306 |
305 TEST_F(TemplateURLFetcherTest, AutodetectedBeforeLoadTest) { | 307 TEST_F(TemplateURLFetcherTest, AutodetectedBeforeLoadTest) { |
306 std::wstring keyword(L"test"); | 308 string16 keyword(ASCIIToUTF16("test")); |
307 ASSERT_FALSE(test_util_.model()->GetTemplateURLForKeyword(keyword)); | 309 ASSERT_FALSE(test_util_.model()->GetTemplateURLForKeyword(keyword)); |
308 | 310 |
309 std::string osdd_file_name("simple_open_search.xml"); | 311 std::string osdd_file_name("simple_open_search.xml"); |
310 StartDownload(keyword, osdd_file_name, | 312 StartDownload(keyword, osdd_file_name, |
311 TemplateURLFetcher::AUTODETECTED_PROVIDER, true); | 313 TemplateURLFetcher::AUTODETECTED_PROVIDER, true); |
312 ASSERT_EQ(0, set_default_called_); | 314 ASSERT_EQ(0, set_default_called_); |
313 ASSERT_EQ(0, add_provider_called_); | 315 ASSERT_EQ(0, add_provider_called_); |
314 ASSERT_EQ(1, callbacks_destroyed_); | 316 ASSERT_EQ(1, callbacks_destroyed_); |
315 } | 317 } |
316 | 318 |
317 TEST_F(TemplateURLFetcherTest, ExplicitBeforeLoadTest) { | 319 TEST_F(TemplateURLFetcherTest, ExplicitBeforeLoadTest) { |
318 std::wstring keyword(L"test"); | 320 string16 keyword(ASCIIToUTF16("test")); |
319 ASSERT_FALSE(test_util_.model()->GetTemplateURLForKeyword(keyword)); | 321 ASSERT_FALSE(test_util_.model()->GetTemplateURLForKeyword(keyword)); |
320 | 322 |
321 std::string osdd_file_name("simple_open_search.xml"); | 323 std::string osdd_file_name("simple_open_search.xml"); |
322 StartDownload(keyword, osdd_file_name, | 324 StartDownload(keyword, osdd_file_name, |
323 TemplateURLFetcher::EXPLICIT_PROVIDER, true); | 325 TemplateURLFetcher::EXPLICIT_PROVIDER, true); |
324 ASSERT_EQ(0, set_default_called_); | 326 ASSERT_EQ(0, set_default_called_); |
325 ASSERT_EQ(0, add_provider_called_); | 327 ASSERT_EQ(0, add_provider_called_); |
326 ASSERT_EQ(1, callbacks_destroyed_); | 328 ASSERT_EQ(1, callbacks_destroyed_); |
327 } | 329 } |
328 | 330 |
329 TEST_F(TemplateURLFetcherTest, ExplicitDefaultBeforeLoadTest) { | 331 TEST_F(TemplateURLFetcherTest, ExplicitDefaultBeforeLoadTest) { |
330 std::wstring keyword(L"test"); | 332 string16 keyword(ASCIIToUTF16("test")); |
331 ASSERT_FALSE(test_util_.model()->GetTemplateURLForKeyword(keyword)); | 333 ASSERT_FALSE(test_util_.model()->GetTemplateURLForKeyword(keyword)); |
332 | 334 |
333 std::string osdd_file_name("simple_open_search.xml"); | 335 std::string osdd_file_name("simple_open_search.xml"); |
334 StartDownload(keyword, osdd_file_name, | 336 StartDownload(keyword, osdd_file_name, |
335 TemplateURLFetcher::EXPLICIT_DEFAULT_PROVIDER, true); | 337 TemplateURLFetcher::EXPLICIT_DEFAULT_PROVIDER, true); |
336 ASSERT_EQ(0, set_default_called_); | 338 ASSERT_EQ(0, set_default_called_); |
337 ASSERT_EQ(0, add_provider_called_); | 339 ASSERT_EQ(0, add_provider_called_); |
338 ASSERT_EQ(0, callbacks_destroyed_); | 340 ASSERT_EQ(0, callbacks_destroyed_); |
339 | 341 |
340 WaitForDownloadToFinish(); | 342 WaitForDownloadToFinish(); |
341 ASSERT_EQ(1, set_default_called_); | 343 ASSERT_EQ(1, set_default_called_); |
342 ASSERT_EQ(0, add_provider_called_); | 344 ASSERT_EQ(0, add_provider_called_); |
343 ASSERT_EQ(1, callbacks_destroyed_); | 345 ASSERT_EQ(1, callbacks_destroyed_); |
344 | 346 |
345 ASSERT_TRUE(last_callback_template_url_.get()); | 347 ASSERT_TRUE(last_callback_template_url_.get()); |
346 EXPECT_STREQ(L"http://example.com/%s/other_stuff", | 348 EXPECT_EQ(ASCIIToUTF16("http://example.com/%s/other_stuff"), |
347 last_callback_template_url_->url()->DisplayURL().c_str()); | 349 last_callback_template_url_->url()->DisplayURL()); |
348 EXPECT_FALSE(last_callback_template_url_->safe_for_autoreplace()); | 350 EXPECT_FALSE(last_callback_template_url_->safe_for_autoreplace()); |
349 } | 351 } |
350 | 352 |
351 TEST_F(TemplateURLFetcherTest, DuplicateKeywordsTest) { | 353 TEST_F(TemplateURLFetcherTest, DuplicateKeywordsTest) { |
352 std::wstring keyword(L"test"); | 354 string16 keyword(ASCIIToUTF16("test")); |
353 | 355 |
354 TemplateURL* t_url = new TemplateURL(); | 356 TemplateURL* t_url = new TemplateURL(); |
355 t_url->SetURL("http://example.com/", 0, 0); | 357 t_url->SetURL("http://example.com/", 0, 0); |
356 t_url->set_keyword(keyword); | 358 t_url->set_keyword(keyword); |
357 t_url->set_short_name(keyword); | 359 t_url->set_short_name(keyword); |
358 test_util_.model()->Add(t_url); | 360 test_util_.model()->Add(t_url); |
359 test_util_.ChangeModelToLoadState(); | 361 test_util_.ChangeModelToLoadState(); |
360 | 362 |
361 ASSERT_TRUE(test_util_.model()->GetTemplateURLForKeyword(keyword)); | 363 ASSERT_TRUE(test_util_.model()->GetTemplateURLForKeyword(keyword)); |
362 | 364 |
(...skipping 14 matching lines...) Expand all Loading... |
377 TemplateURLFetcher::EXPLICIT_DEFAULT_PROVIDER, true); | 379 TemplateURLFetcher::EXPLICIT_DEFAULT_PROVIDER, true); |
378 ASSERT_EQ(0, set_default_called_); | 380 ASSERT_EQ(0, set_default_called_); |
379 ASSERT_EQ(0, add_provider_called_); | 381 ASSERT_EQ(0, add_provider_called_); |
380 ASSERT_EQ(2, callbacks_destroyed_); | 382 ASSERT_EQ(2, callbacks_destroyed_); |
381 | 383 |
382 WaitForDownloadToFinish(); | 384 WaitForDownloadToFinish(); |
383 ASSERT_EQ(1, set_default_called_); | 385 ASSERT_EQ(1, set_default_called_); |
384 ASSERT_EQ(0, add_provider_called_); | 386 ASSERT_EQ(0, add_provider_called_); |
385 ASSERT_EQ(3, callbacks_destroyed_); | 387 ASSERT_EQ(3, callbacks_destroyed_); |
386 ASSERT_TRUE(last_callback_template_url_.get()); | 388 ASSERT_TRUE(last_callback_template_url_.get()); |
387 ASSERT_STRNE(keyword.c_str(), last_callback_template_url_->keyword().c_str()); | 389 ASSERT_NE(keyword, last_callback_template_url_->keyword()); |
388 } | 390 } |
OLD | NEW |