| OLD | NEW |
| 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/metrics/histogram.h" | 6 #include "base/metrics/histogram.h" |
| 7 #include "base/message_loop.h" | 7 #include "base/message_loop.h" |
| 8 #include "base/utf_string_conversions.h" | 8 #include "base/utf_string_conversions.h" |
| 9 #include "chrome/browser/protector/base_setting_change.h" |
| 9 #include "chrome/browser/protector/histograms.h" | 10 #include "chrome/browser/protector/histograms.h" |
| 10 #include "chrome/browser/protector/mock_protector_service.h" | 11 #include "chrome/browser/protector/mock_protector_service.h" |
| 11 #include "chrome/browser/protector/protector_service_factory.h" | 12 #include "chrome/browser/protector/protector_service_factory.h" |
| 12 #include "chrome/browser/search_engines/template_url.h" | 13 #include "chrome/browser/search_engines/template_url.h" |
| 13 #include "chrome/browser/search_engines/template_url_prepopulate_data.h" | 14 #include "chrome/browser/search_engines/template_url_prepopulate_data.h" |
| 14 #include "chrome/browser/search_engines/template_url_service.h" | 15 #include "chrome/browser/search_engines/template_url_service.h" |
| 15 #include "chrome/browser/search_engines/template_url_service_factory.h" | 16 #include "chrome/browser/search_engines/template_url_service_factory.h" |
| 16 #include "chrome/browser/ui/browser.h" | 17 #include "chrome/browser/ui/browser.h" |
| 17 #include "chrome/common/url_constants.h" | 18 #include "chrome/common/url_constants.h" |
| 18 #include "chrome/test/base/in_process_browser_test.h" | 19 #include "chrome/test/base/in_process_browser_test.h" |
| 19 #include "chrome/test/base/ui_test_utils.h" | 20 #include "chrome/test/base/ui_test_utils.h" |
| 20 #include "googleurl/src/gurl.h" | 21 #include "googleurl/src/gurl.h" |
| 21 #include "grit/generated_resources.h" | 22 #include "grit/generated_resources.h" |
| 22 #include "ui/base/l10n/l10n_util.h" | 23 #include "ui/base/l10n/l10n_util.h" |
| 23 | 24 |
| 24 using ::testing::Invoke; | 25 using ::testing::Invoke; |
| 25 using ::testing::NiceMock; | 26 using ::testing::NiceMock; |
| 26 using ::testing::Return; | 27 using ::testing::Return; |
| 27 | 28 |
| 29 namespace protector { |
| 30 |
| 28 namespace { | 31 namespace { |
| 29 | 32 |
| 30 // Keyword names and URLs used for testing. | 33 // Keyword names and URLs used for testing. |
| 31 const string16 example_info = ASCIIToUTF16("Example.info"); | 34 const string16 example_info = ASCIIToUTF16("Example.info"); |
| 32 const string16 example_info_long = ASCIIToUTF16("ExampleSearchEngine.info"); | 35 const string16 example_info_long = ASCIIToUTF16("ExampleSearchEngine.info"); |
| 33 const std::string http_example_info = "http://example.info/%s"; | 36 const std::string http_example_info = "http://example.info/?q={searchTerms}"; |
| 37 const std::string example_info_domain = "example.info"; |
| 34 const string16 example_com = ASCIIToUTF16("Example.com"); | 38 const string16 example_com = ASCIIToUTF16("Example.com"); |
| 35 const string16 example_com_long = ASCIIToUTF16("ExampleSearchEngine.com"); | 39 const string16 example_com_long = ASCIIToUTF16("ExampleSearchEngine.com"); |
| 36 const std::string http_example_com = "http://example.com/%s"; | 40 const std::string http_example_com = "http://example.com/?q={searchTerms}"; |
| 41 const std::string example_com_domain = "example.com"; |
| 37 const string16 example_net = ASCIIToUTF16("Example.net"); | 42 const string16 example_net = ASCIIToUTF16("Example.net"); |
| 38 const std::string http_example_net = "http://example.net/%s"; | 43 const std::string http_example_net = "http://example.net/?q={searchTerms}"; |
| 44 const std::string example_domain = "example.net"; |
| 45 |
| 46 const BaseSettingChange::DisplayName kNoDisplayName( |
| 47 BaseSettingChange::kDefaultNamePriority, string16()); |
| 39 | 48 |
| 40 // Convenience function. | 49 // Convenience function. |
| 41 TemplateURL* MakeTemplateURL(const string16& short_name, | 50 TemplateURL* MakeTemplateURL(const string16& short_name, |
| 42 const string16& keyword, | 51 const string16& keyword, |
| 43 const std::string& url) { | 52 const std::string& url) { |
| 44 TemplateURLData data; | 53 TemplateURLData data; |
| 45 data.short_name = short_name; | 54 data.short_name = short_name; |
| 46 if (keyword.empty()) | 55 if (keyword.empty()) |
| 47 data.SetAutogenerateKeyword(true); | 56 data.SetAutogenerateKeyword(true); |
| 48 else | 57 else |
| 49 data.SetKeyword(keyword); | 58 data.SetKeyword(keyword); |
| 50 data.SetURL(url); | 59 data.SetURL(url); |
| 51 return new TemplateURL(data); | 60 return new TemplateURL(data); |
| 52 } | 61 } |
| 53 | 62 |
| 54 }; | 63 } // namespace |
| 55 | |
| 56 namespace protector { | |
| 57 | 64 |
| 58 class DefaultSearchProviderChangeTest : public InProcessBrowserTest { | 65 class DefaultSearchProviderChangeTest : public InProcessBrowserTest { |
| 59 public: | 66 public: |
| 60 virtual void SetUpOnMainThread() OVERRIDE { | 67 virtual void SetUpOnMainThread() OVERRIDE { |
| 61 mock_protector_service_ = | 68 mock_protector_service_ = |
| 62 MockProtectorService::BuildForProfile(browser()->profile()); | 69 MockProtectorService::BuildForProfile(browser()->profile()); |
| 63 | 70 |
| 64 // Ensure that TemplateURLService is loaded. | 71 // Ensure that TemplateURLService is loaded. |
| 65 turl_service_ = | 72 turl_service_ = |
| 66 TemplateURLServiceFactory::GetForProfile(browser()->profile()); | 73 TemplateURLServiceFactory::GetForProfile(browser()->profile()); |
| (...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 169 current_histogram_id, 1); | 176 current_histogram_id, 1); |
| 170 ExpectHistogramCount(kProtectorHistogramSearchProviderRestored, | 177 ExpectHistogramCount(kProtectorHistogramSearchProviderRestored, |
| 171 backup_histogram_id, 1); | 178 backup_histogram_id, 1); |
| 172 | 179 |
| 173 // Verify text messages. | 180 // Verify text messages. |
| 174 EXPECT_EQ(GetBubbleMessage(), change->GetBubbleMessage()); | 181 EXPECT_EQ(GetBubbleMessage(), change->GetBubbleMessage()); |
| 175 EXPECT_EQ(GetChangeSearchButtonText(example_com), | 182 EXPECT_EQ(GetChangeSearchButtonText(example_com), |
| 176 change->GetApplyButtonText()); | 183 change->GetApplyButtonText()); |
| 177 EXPECT_EQ(GetKeepSearchButtonText(example_info), | 184 EXPECT_EQ(GetKeepSearchButtonText(example_info), |
| 178 change->GetDiscardButtonText()); | 185 change->GetDiscardButtonText()); |
| 186 EXPECT_EQ(example_com_domain, change->GetNewSettingURL().host()); |
| 187 EXPECT_EQ(example_com, change->GetApplyDisplayName().second); |
| 179 | 188 |
| 180 // Discard does nothing - backup was already active. | 189 // Discard does nothing - backup was already active. |
| 181 change->Discard(browser()); | 190 change->Discard(browser()); |
| 182 EXPECT_EQ(FindTemplateURL(http_example_info), | 191 EXPECT_EQ(FindTemplateURL(http_example_info), |
| 183 turl_service_->GetDefaultSearchProvider()); | 192 turl_service_->GetDefaultSearchProvider()); |
| 184 ExpectHistogramCount(kProtectorHistogramSearchProviderDiscarded, | 193 ExpectHistogramCount(kProtectorHistogramSearchProviderDiscarded, |
| 185 current_histogram_id, 1); | 194 current_histogram_id, 1); |
| 186 | 195 |
| 187 // Verify that Apply switches back to |current_url|. | 196 // Verify that Apply switches back to |current_url|. |
| 188 change->Apply(browser()); | 197 change->Apply(browser()); |
| (...skipping 22 matching lines...) Expand all Loading... |
| 211 scoped_ptr<BaseSettingChange> change( | 220 scoped_ptr<BaseSettingChange> change( |
| 212 CreateDefaultSearchProviderChange(current_url, backup_url_long)); | 221 CreateDefaultSearchProviderChange(current_url, backup_url_long)); |
| 213 ASSERT_TRUE(change.get()); | 222 ASSERT_TRUE(change.get()); |
| 214 ASSERT_TRUE(change->Init(browser()->profile())); | 223 ASSERT_TRUE(change->Init(browser()->profile())); |
| 215 | 224 |
| 216 // Verify text messages. | 225 // Verify text messages. |
| 217 EXPECT_EQ(GetBubbleMessage(), change->GetBubbleMessage()); | 226 EXPECT_EQ(GetBubbleMessage(), change->GetBubbleMessage()); |
| 218 EXPECT_EQ(GetChangeSearchButtonText(example_com), | 227 EXPECT_EQ(GetChangeSearchButtonText(example_com), |
| 219 change->GetApplyButtonText()); | 228 change->GetApplyButtonText()); |
| 220 EXPECT_EQ(GetKeepSearchButtonText(), change->GetDiscardButtonText()); | 229 EXPECT_EQ(GetKeepSearchButtonText(), change->GetDiscardButtonText()); |
| 230 EXPECT_EQ(example_com_domain, change->GetNewSettingURL().host()); |
| 231 EXPECT_EQ(example_com, change->GetApplyDisplayName().second); |
| 221 } | 232 } |
| 222 | 233 |
| 223 { | 234 { |
| 224 // Current name too long. | 235 // Current name too long. |
| 225 turl_service_->Add(new TemplateURL(backup_url->data())); | 236 turl_service_->Add(new TemplateURL(backup_url->data())); |
| 226 AddAndSetDefault(current_url_long); | 237 AddAndSetDefault(current_url_long); |
| 227 | 238 |
| 228 scoped_ptr<BaseSettingChange> change( | 239 scoped_ptr<BaseSettingChange> change( |
| 229 CreateDefaultSearchProviderChange(current_url_long, backup_url)); | 240 CreateDefaultSearchProviderChange(current_url_long, backup_url)); |
| 230 ASSERT_TRUE(change.get()); | 241 ASSERT_TRUE(change.get()); |
| 231 ASSERT_TRUE(change->Init(browser()->profile())); | 242 ASSERT_TRUE(change->Init(browser()->profile())); |
| 232 | 243 |
| 233 // Verify text messages. | 244 // Verify text messages. |
| 234 EXPECT_EQ(GetBubbleMessage(), change->GetBubbleMessage()); | 245 EXPECT_EQ(GetBubbleMessage(), change->GetBubbleMessage()); |
| 235 EXPECT_EQ(GetChangeSearchButtonText(), change->GetApplyButtonText()); | 246 EXPECT_EQ(GetChangeSearchButtonText(), change->GetApplyButtonText()); |
| 236 EXPECT_EQ(GetKeepSearchButtonText(example_info), | 247 EXPECT_EQ(GetKeepSearchButtonText(example_info), |
| 237 change->GetDiscardButtonText()); | 248 change->GetDiscardButtonText()); |
| 249 EXPECT_EQ(example_com_domain, change->GetNewSettingURL().host()); |
| 250 EXPECT_EQ(kNoDisplayName, change->GetApplyDisplayName()); |
| 238 } | 251 } |
| 239 } | 252 } |
| 240 | 253 |
| 241 IN_PROC_BROWSER_TEST_F(DefaultSearchProviderChangeTest, BackupInvalid) { | 254 IN_PROC_BROWSER_TEST_F(DefaultSearchProviderChangeTest, BackupInvalid) { |
| 242 // Backup is invalid, current search provider exists, fallback to the | 255 // Backup is invalid, current search provider exists, fallback to the |
| 243 // prepopulated default search, which exists among keywords. | 256 // prepopulated default search, which exists among keywords. |
| 244 int prepopulated_histogram_id = | 257 int prepopulated_histogram_id = |
| 245 protector::GetSearchProviderHistogramID(prepopulated_url_.get()); | 258 protector::GetSearchProviderHistogramID(prepopulated_url_.get()); |
| 246 TemplateURL* current_url = | 259 TemplateURL* current_url = |
| 247 MakeTemplateURL(example_com, ASCIIToUTF16("b"), http_example_com); | 260 MakeTemplateURL(example_com, ASCIIToUTF16("b"), http_example_com); |
| (...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 327 prepopulated_histogram_id, 1); | 340 prepopulated_histogram_id, 1); |
| 328 ExpectHistogramCount(kProtectorHistogramSearchProviderMissing, | 341 ExpectHistogramCount(kProtectorHistogramSearchProviderMissing, |
| 329 prepopulated_histogram_id, 1); | 342 prepopulated_histogram_id, 1); |
| 330 | 343 |
| 331 // Verify text messages. | 344 // Verify text messages. |
| 332 EXPECT_EQ(GetBubbleMessage(prepopulated_url_->short_name()), | 345 EXPECT_EQ(GetBubbleMessage(prepopulated_url_->short_name()), |
| 333 change->GetBubbleMessage()); | 346 change->GetBubbleMessage()); |
| 334 EXPECT_EQ(GetChangeSearchButtonText(example_com), | 347 EXPECT_EQ(GetChangeSearchButtonText(example_com), |
| 335 change->GetApplyButtonText()); | 348 change->GetApplyButtonText()); |
| 336 EXPECT_EQ(GetOpenSettingsButtonText(), change->GetDiscardButtonText()); | 349 EXPECT_EQ(GetOpenSettingsButtonText(), change->GetDiscardButtonText()); |
| 350 EXPECT_EQ(GURL(), change->GetNewSettingURL()); |
| 351 EXPECT_EQ(example_com, change->GetApplyDisplayName().second); |
| 337 | 352 |
| 338 // Verify that search engine settings are opened by Discard. | 353 // Verify that search engine settings are opened by Discard. |
| 339 ExpectSettingsOpened(chrome::kSearchEnginesSubPage); | 354 ExpectSettingsOpened(chrome::kSearchEnginesSubPage); |
| 340 change->Discard(browser()); | 355 change->Discard(browser()); |
| 341 EXPECT_EQ(FindTemplateURL(prepopulated_url_->url()), | 356 EXPECT_EQ(FindTemplateURL(prepopulated_url_->url()), |
| 342 turl_service_->GetDefaultSearchProvider()); | 357 turl_service_->GetDefaultSearchProvider()); |
| 343 | 358 |
| 344 // Verify that Apply switches back to |current_url|. | 359 // Verify that Apply switches back to |current_url|. |
| 345 change->Apply(browser()); | 360 change->Apply(browser()); |
| 346 EXPECT_EQ(FindTemplateURL(http_example_com), | 361 EXPECT_EQ(FindTemplateURL(http_example_com), |
| (...skipping 23 matching lines...) Expand all Loading... |
| 370 ExpectHistogramCount(kProtectorHistogramSearchProviderHijacked, | 385 ExpectHistogramCount(kProtectorHistogramSearchProviderHijacked, |
| 371 protector::GetSearchProviderHistogramID(NULL), 1); | 386 protector::GetSearchProviderHistogramID(NULL), 1); |
| 372 ExpectHistogramCount(kProtectorHistogramSearchProviderRestored, | 387 ExpectHistogramCount(kProtectorHistogramSearchProviderRestored, |
| 373 backup_histogram_id, 1); | 388 backup_histogram_id, 1); |
| 374 | 389 |
| 375 // Verify text messages. | 390 // Verify text messages. |
| 376 EXPECT_EQ(GetBubbleMessage(), change->GetBubbleMessage()); | 391 EXPECT_EQ(GetBubbleMessage(), change->GetBubbleMessage()); |
| 377 EXPECT_EQ(GetOpenSettingsButtonText(), change->GetApplyButtonText()); | 392 EXPECT_EQ(GetOpenSettingsButtonText(), change->GetApplyButtonText()); |
| 378 EXPECT_EQ(GetKeepSearchButtonText(example_info), | 393 EXPECT_EQ(GetKeepSearchButtonText(example_info), |
| 379 change->GetDiscardButtonText()); | 394 change->GetDiscardButtonText()); |
| 395 EXPECT_EQ(GURL(), change->GetNewSettingURL()); |
| 396 EXPECT_EQ(kNoDisplayName, change->GetApplyDisplayName()); |
| 380 | 397 |
| 381 // Discard does nothing - backup was already active. | 398 // Discard does nothing - backup was already active. |
| 382 change->Discard(browser()); | 399 change->Discard(browser()); |
| 383 EXPECT_EQ(FindTemplateURL(http_example_info), | 400 EXPECT_EQ(FindTemplateURL(http_example_info), |
| 384 turl_service_->GetDefaultSearchProvider()); | 401 turl_service_->GetDefaultSearchProvider()); |
| 385 | 402 |
| 386 // Verify that search engine settings are opened by Apply (no other changes). | 403 // Verify that search engine settings are opened by Apply (no other changes). |
| 387 ExpectSettingsOpened(chrome::kSearchEnginesSubPage); | 404 ExpectSettingsOpened(chrome::kSearchEnginesSubPage); |
| 388 change->Apply(browser()); | 405 change->Apply(browser()); |
| 389 EXPECT_EQ(FindTemplateURL(http_example_info), | 406 EXPECT_EQ(FindTemplateURL(http_example_info), |
| (...skipping 23 matching lines...) Expand all Loading... |
| 413 ExpectHistogramCount(kProtectorHistogramSearchProviderRestored, | 430 ExpectHistogramCount(kProtectorHistogramSearchProviderRestored, |
| 414 prepopulated_histogram_id, 1); | 431 prepopulated_histogram_id, 1); |
| 415 ExpectHistogramCount(kProtectorHistogramSearchProviderFallback, | 432 ExpectHistogramCount(kProtectorHistogramSearchProviderFallback, |
| 416 prepopulated_histogram_id, 1); | 433 prepopulated_histogram_id, 1); |
| 417 | 434 |
| 418 // Verify text messages. | 435 // Verify text messages. |
| 419 EXPECT_EQ(GetBubbleMessage(prepopulated_url_->short_name()), | 436 EXPECT_EQ(GetBubbleMessage(prepopulated_url_->short_name()), |
| 420 change->GetBubbleMessage()); | 437 change->GetBubbleMessage()); |
| 421 EXPECT_EQ(string16(), change->GetApplyButtonText()); | 438 EXPECT_EQ(string16(), change->GetApplyButtonText()); |
| 422 EXPECT_EQ(GetOpenSettingsButtonText(), change->GetDiscardButtonText()); | 439 EXPECT_EQ(GetOpenSettingsButtonText(), change->GetDiscardButtonText()); |
| 440 EXPECT_EQ(GURL(), change->GetNewSettingURL()); |
| 441 EXPECT_EQ(kNoDisplayName, change->GetApplyDisplayName()); |
| 423 | 442 |
| 424 // Verify that search engine settings are opened by Discard. | 443 // Verify that search engine settings are opened by Discard. |
| 425 ExpectSettingsOpened(chrome::kSearchEnginesSubPage); | 444 ExpectSettingsOpened(chrome::kSearchEnginesSubPage); |
| 426 change->Discard(browser()); | 445 change->Discard(browser()); |
| 427 EXPECT_EQ(FindTemplateURL(prepopulated_url_->url()), | 446 EXPECT_EQ(FindTemplateURL(prepopulated_url_->url()), |
| 428 turl_service_->GetDefaultSearchProvider()); | 447 turl_service_->GetDefaultSearchProvider()); |
| 429 } | 448 } |
| 430 | 449 |
| 431 IN_PROC_BROWSER_TEST_F(DefaultSearchProviderChangeTest, | 450 IN_PROC_BROWSER_TEST_F(DefaultSearchProviderChangeTest, |
| 432 BackupInvalidFallbackSameAsCurrent) { | 451 BackupInvalidFallbackSameAsCurrent) { |
| (...skipping 21 matching lines...) Expand all Loading... |
| 454 ExpectHistogramCount(kProtectorHistogramSearchProviderRestored, | 473 ExpectHistogramCount(kProtectorHistogramSearchProviderRestored, |
| 455 prepopulated_histogram_id, 1); | 474 prepopulated_histogram_id, 1); |
| 456 ExpectHistogramCount(kProtectorHistogramSearchProviderFallback, | 475 ExpectHistogramCount(kProtectorHistogramSearchProviderFallback, |
| 457 prepopulated_histogram_id, 1); | 476 prepopulated_histogram_id, 1); |
| 458 | 477 |
| 459 // Verify text messages. | 478 // Verify text messages. |
| 460 EXPECT_EQ(GetBubbleMessage(prepopulated_url_->short_name()), | 479 EXPECT_EQ(GetBubbleMessage(prepopulated_url_->short_name()), |
| 461 change->GetBubbleMessage()); | 480 change->GetBubbleMessage()); |
| 462 EXPECT_EQ(string16(), change->GetApplyButtonText()); | 481 EXPECT_EQ(string16(), change->GetApplyButtonText()); |
| 463 EXPECT_EQ(GetOpenSettingsButtonText(), change->GetDiscardButtonText()); | 482 EXPECT_EQ(GetOpenSettingsButtonText(), change->GetDiscardButtonText()); |
| 483 EXPECT_EQ(GURL(), change->GetNewSettingURL()); |
| 484 EXPECT_EQ(current_url->short_name(), change->GetApplyDisplayName().second); |
| 464 | 485 |
| 465 // Verify that search engine settings are opened by Discard. | 486 // Verify that search engine settings are opened by Discard. |
| 466 ExpectSettingsOpened(chrome::kSearchEnginesSubPage); | 487 ExpectSettingsOpened(chrome::kSearchEnginesSubPage); |
| 467 change->Discard(browser()); | 488 change->Discard(browser()); |
| 468 EXPECT_EQ(current_url, turl_service_->GetDefaultSearchProvider()); | 489 EXPECT_EQ(current_url, turl_service_->GetDefaultSearchProvider()); |
| 469 } | 490 } |
| 470 | 491 |
| 471 | 492 |
| 472 IN_PROC_BROWSER_TEST_F(DefaultSearchProviderChangeTest, | 493 IN_PROC_BROWSER_TEST_F(DefaultSearchProviderChangeTest, |
| 473 DefaultSearchProviderChangedByUser) { | 494 DefaultSearchProviderChangedByUser) { |
| (...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 518 EXPECT_EQ(FindTemplateURL(http_example_info), | 539 EXPECT_EQ(FindTemplateURL(http_example_info), |
| 519 turl_service_->GetDefaultSearchProvider()); | 540 turl_service_->GetDefaultSearchProvider()); |
| 520 | 541 |
| 521 turl_service_->Remove(current_url); | 542 turl_service_->Remove(current_url); |
| 522 | 543 |
| 523 // Verify that text messages altered after removing |current_url|. | 544 // Verify that text messages altered after removing |current_url|. |
| 524 EXPECT_EQ(GetBubbleMessage(), change->GetBubbleMessage()); | 545 EXPECT_EQ(GetBubbleMessage(), change->GetBubbleMessage()); |
| 525 EXPECT_EQ(GetOpenSettingsButtonText(), change->GetApplyButtonText()); | 546 EXPECT_EQ(GetOpenSettingsButtonText(), change->GetApplyButtonText()); |
| 526 EXPECT_EQ(GetKeepSearchButtonText(example_info), | 547 EXPECT_EQ(GetKeepSearchButtonText(example_info), |
| 527 change->GetDiscardButtonText()); | 548 change->GetDiscardButtonText()); |
| 549 EXPECT_EQ(GURL(), change->GetNewSettingURL()); |
| 550 EXPECT_EQ(kNoDisplayName, change->GetApplyDisplayName()); |
| 528 | 551 |
| 529 // Verify that search engine settings are opened by Apply. | 552 // Verify that search engine settings are opened by Apply. |
| 530 ExpectSettingsOpened(chrome::kSearchEnginesSubPage); | 553 ExpectSettingsOpened(chrome::kSearchEnginesSubPage); |
| 531 change->Apply(browser()); | 554 change->Apply(browser()); |
| 532 EXPECT_EQ(FindTemplateURL(http_example_info), | 555 EXPECT_EQ(FindTemplateURL(http_example_info), |
| 533 turl_service_->GetDefaultSearchProvider()); | 556 turl_service_->GetDefaultSearchProvider()); |
| 534 | 557 |
| 535 // Discard does nothing - backup was already active. | 558 // Discard does nothing - backup was already active. |
| 536 change->Discard(browser()); | 559 change->Discard(browser()); |
| 537 EXPECT_EQ(FindTemplateURL(http_example_info), | 560 EXPECT_EQ(FindTemplateURL(http_example_info), |
| 538 turl_service_->GetDefaultSearchProvider()); | 561 turl_service_->GetDefaultSearchProvider()); |
| 539 } | 562 } |
| 540 | 563 |
| 541 } // namespace protector | 564 } // namespace protector |
| OLD | NEW |