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