| OLD | NEW |
| 1 // Copyright (c) 2011 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_path.h" | 5 #include "base/file_path.h" |
| 6 #include "base/memory/ref_counted.h" | 6 #include "base/memory/ref_counted.h" |
| 7 #include "chrome/browser/policy/configuration_policy_pref_store.h" | 7 #include "chrome/browser/policy/configuration_policy_pref_store.h" |
| 8 #include "chrome/browser/policy/mock_configuration_policy_provider.h" | 8 #include "chrome/browser/policy/mock_configuration_policy_provider.h" |
| 9 #include "chrome/browser/prefs/proxy_config_dictionary.h" | 9 #include "chrome/browser/prefs/proxy_config_dictionary.h" |
| 10 #include "chrome/common/pref_names.h" | 10 #include "chrome/common/pref_names.h" |
| (...skipping 537 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 548 } | 548 } |
| 549 | 549 |
| 550 // Checks that for a fully defined search policy, all elements have been | 550 // Checks that for a fully defined search policy, all elements have been |
| 551 // read properly. | 551 // read properly. |
| 552 TEST_F(ConfigurationPolicyPrefStoreDefaultSearchTest, FullyDefined) { | 552 TEST_F(ConfigurationPolicyPrefStoreDefaultSearchTest, FullyDefined) { |
| 553 const char* const search_url = "http://test.com/search?t={searchTerms}"; | 553 const char* const search_url = "http://test.com/search?t={searchTerms}"; |
| 554 const char* const suggest_url = "http://test.com/sugg?={searchTerms}"; | 554 const char* const suggest_url = "http://test.com/sugg?={searchTerms}"; |
| 555 const char* const icon_url = "http://test.com/icon.jpg"; | 555 const char* const icon_url = "http://test.com/icon.jpg"; |
| 556 const char* const name = "MyName"; | 556 const char* const name = "MyName"; |
| 557 const char* const keyword = "MyKeyword"; | 557 const char* const keyword = "MyKeyword"; |
| 558 const char* const encodings = "UTF-16;UTF-8"; | 558 ListValue* encodings = new ListValue(); |
| 559 encodings->Append(Value::CreateStringValue("UTF-16")); |
| 560 encodings->Append(Value::CreateStringValue("UTF-8")); |
| 559 MockConfigurationPolicyProvider provider; | 561 MockConfigurationPolicyProvider provider; |
| 560 provider.AddPolicy(kPolicyDefaultSearchProviderEnabled, | 562 provider.AddPolicy(kPolicyDefaultSearchProviderEnabled, |
| 561 Value::CreateBooleanValue(true)); | 563 Value::CreateBooleanValue(true)); |
| 562 provider.AddPolicy(kPolicyDefaultSearchProviderSearchURL, | 564 provider.AddPolicy(kPolicyDefaultSearchProviderSearchURL, |
| 563 Value::CreateStringValue(search_url)); | 565 Value::CreateStringValue(search_url)); |
| 564 provider.AddPolicy(kPolicyDefaultSearchProviderName, | 566 provider.AddPolicy(kPolicyDefaultSearchProviderName, |
| 565 Value::CreateStringValue(name)); | 567 Value::CreateStringValue(name)); |
| 566 provider.AddPolicy(kPolicyDefaultSearchProviderKeyword, | 568 provider.AddPolicy(kPolicyDefaultSearchProviderKeyword, |
| 567 Value::CreateStringValue(keyword)); | 569 Value::CreateStringValue(keyword)); |
| 568 provider.AddPolicy(kPolicyDefaultSearchProviderSuggestURL, | 570 provider.AddPolicy(kPolicyDefaultSearchProviderSuggestURL, |
| 569 Value::CreateStringValue(suggest_url)); | 571 Value::CreateStringValue(suggest_url)); |
| 570 provider.AddPolicy(kPolicyDefaultSearchProviderIconURL, | 572 provider.AddPolicy(kPolicyDefaultSearchProviderIconURL, |
| 571 Value::CreateStringValue(icon_url)); | 573 Value::CreateStringValue(icon_url)); |
| 572 provider.AddPolicy(kPolicyDefaultSearchProviderEncodings, | 574 provider.AddPolicy(kPolicyDefaultSearchProviderEncodings, encodings); |
| 573 Value::CreateStringValue(encodings)); | |
| 574 | 575 |
| 575 scoped_refptr<ConfigurationPolicyPrefStore> store( | 576 scoped_refptr<ConfigurationPolicyPrefStore> store( |
| 576 new ConfigurationPolicyPrefStore(&provider)); | 577 new ConfigurationPolicyPrefStore(&provider)); |
| 577 | 578 |
| 578 const Value* value = NULL; | 579 const Value* value = NULL; |
| 579 EXPECT_EQ(PrefStore::READ_OK, | 580 EXPECT_EQ(PrefStore::READ_OK, |
| 580 store->GetValue(prefs::kDefaultSearchProviderSearchURL, &value)); | 581 store->GetValue(prefs::kDefaultSearchProviderSearchURL, &value)); |
| 581 EXPECT_TRUE(StringValue(search_url).Equals(value)); | 582 EXPECT_TRUE(StringValue(search_url).Equals(value)); |
| 582 | 583 |
| 583 EXPECT_EQ(PrefStore::READ_OK, | 584 EXPECT_EQ(PrefStore::READ_OK, |
| 584 store->GetValue(prefs::kDefaultSearchProviderName, &value)); | 585 store->GetValue(prefs::kDefaultSearchProviderName, &value)); |
| 585 EXPECT_TRUE(StringValue(name).Equals(value)); | 586 EXPECT_TRUE(StringValue(name).Equals(value)); |
| 586 | 587 |
| 587 EXPECT_EQ(PrefStore::READ_OK, | 588 EXPECT_EQ(PrefStore::READ_OK, |
| 588 store->GetValue(prefs::kDefaultSearchProviderKeyword, &value)); | 589 store->GetValue(prefs::kDefaultSearchProviderKeyword, &value)); |
| 589 EXPECT_TRUE(StringValue(keyword).Equals(value)); | 590 EXPECT_TRUE(StringValue(keyword).Equals(value)); |
| 590 | 591 |
| 591 EXPECT_EQ(PrefStore::READ_OK, | 592 EXPECT_EQ(PrefStore::READ_OK, |
| 592 store->GetValue(prefs::kDefaultSearchProviderSuggestURL, &value)); | 593 store->GetValue(prefs::kDefaultSearchProviderSuggestURL, &value)); |
| 593 EXPECT_TRUE(StringValue(suggest_url).Equals(value)); | 594 EXPECT_TRUE(StringValue(suggest_url).Equals(value)); |
| 594 | 595 |
| 595 EXPECT_EQ(PrefStore::READ_OK, | 596 EXPECT_EQ(PrefStore::READ_OK, |
| 596 store->GetValue(prefs::kDefaultSearchProviderIconURL, &value)); | 597 store->GetValue(prefs::kDefaultSearchProviderIconURL, &value)); |
| 597 EXPECT_TRUE(StringValue(icon_url).Equals(value)); | 598 EXPECT_TRUE(StringValue(icon_url).Equals(value)); |
| 598 | 599 |
| 599 EXPECT_EQ(PrefStore::READ_OK, | 600 EXPECT_EQ(PrefStore::READ_OK, |
| 600 store->GetValue(prefs::kDefaultSearchProviderEncodings, &value)); | 601 store->GetValue(prefs::kDefaultSearchProviderEncodings, &value)); |
| 601 EXPECT_TRUE(StringValue(encodings).Equals(value)); | 602 EXPECT_TRUE(StringValue("UTF-16;UTF-8").Equals(value)); |
| 602 } | 603 } |
| 603 | 604 |
| 604 // Checks that if the default search policy is missing, that no elements of the | 605 // Checks that if the default search policy is missing, that no elements of the |
| 605 // default search policy will be present. | 606 // default search policy will be present. |
| 606 TEST_F(ConfigurationPolicyPrefStoreDefaultSearchTest, MissingUrl) { | 607 TEST_F(ConfigurationPolicyPrefStoreDefaultSearchTest, MissingUrl) { |
| 607 const char* const suggest_url = "http://test.com/sugg?t={searchTerms}"; | 608 const char* const suggest_url = "http://test.com/sugg?t={searchTerms}"; |
| 608 const char* const icon_url = "http://test.com/icon.jpg"; | 609 const char* const icon_url = "http://test.com/icon.jpg"; |
| 609 const char* const name = "MyName"; | 610 const char* const name = "MyName"; |
| 610 const char* const keyword = "MyKeyword"; | 611 const char* const keyword = "MyKeyword"; |
| 611 const char* const encodings = "UTF-16;UTF-8"; | 612 ListValue* encodings = new ListValue(); |
| 613 encodings->Append(Value::CreateStringValue("UTF-16")); |
| 614 encodings->Append(Value::CreateStringValue("UTF-8")); |
| 612 MockConfigurationPolicyProvider provider; | 615 MockConfigurationPolicyProvider provider; |
| 613 provider.AddPolicy(kPolicyDefaultSearchProviderEnabled, | 616 provider.AddPolicy(kPolicyDefaultSearchProviderEnabled, |
| 614 Value::CreateBooleanValue(true)); | 617 Value::CreateBooleanValue(true)); |
| 615 provider.AddPolicy(kPolicyDefaultSearchProviderName, | 618 provider.AddPolicy(kPolicyDefaultSearchProviderName, |
| 616 Value::CreateStringValue(name)); | 619 Value::CreateStringValue(name)); |
| 617 provider.AddPolicy(kPolicyDefaultSearchProviderKeyword, | 620 provider.AddPolicy(kPolicyDefaultSearchProviderKeyword, |
| 618 Value::CreateStringValue(keyword)); | 621 Value::CreateStringValue(keyword)); |
| 619 provider.AddPolicy(kPolicyDefaultSearchProviderSuggestURL, | 622 provider.AddPolicy(kPolicyDefaultSearchProviderSuggestURL, |
| 620 Value::CreateStringValue(suggest_url)); | 623 Value::CreateStringValue(suggest_url)); |
| 621 provider.AddPolicy(kPolicyDefaultSearchProviderIconURL, | 624 provider.AddPolicy(kPolicyDefaultSearchProviderIconURL, |
| 622 Value::CreateStringValue(icon_url)); | 625 Value::CreateStringValue(icon_url)); |
| 623 provider.AddPolicy(kPolicyDefaultSearchProviderEncodings, | 626 provider.AddPolicy(kPolicyDefaultSearchProviderEncodings, encodings); |
| 624 Value::CreateStringValue(encodings)); | |
| 625 | 627 |
| 626 scoped_refptr<ConfigurationPolicyPrefStore> store( | 628 scoped_refptr<ConfigurationPolicyPrefStore> store( |
| 627 new ConfigurationPolicyPrefStore(&provider)); | 629 new ConfigurationPolicyPrefStore(&provider)); |
| 628 | 630 |
| 629 EXPECT_EQ(PrefStore::READ_NO_VALUE, | 631 EXPECT_EQ(PrefStore::READ_NO_VALUE, |
| 630 store->GetValue(prefs::kDefaultSearchProviderSearchURL, NULL)); | 632 store->GetValue(prefs::kDefaultSearchProviderSearchURL, NULL)); |
| 631 EXPECT_EQ(PrefStore::READ_NO_VALUE, | 633 EXPECT_EQ(PrefStore::READ_NO_VALUE, |
| 632 store->GetValue(prefs::kDefaultSearchProviderName, NULL)); | 634 store->GetValue(prefs::kDefaultSearchProviderName, NULL)); |
| 633 EXPECT_EQ(PrefStore::READ_NO_VALUE, | 635 EXPECT_EQ(PrefStore::READ_NO_VALUE, |
| 634 store->GetValue(prefs::kDefaultSearchProviderKeyword, NULL)); | 636 store->GetValue(prefs::kDefaultSearchProviderKeyword, NULL)); |
| 635 EXPECT_EQ(PrefStore::READ_NO_VALUE, | 637 EXPECT_EQ(PrefStore::READ_NO_VALUE, |
| 636 store->GetValue(prefs::kDefaultSearchProviderSuggestURL, NULL)); | 638 store->GetValue(prefs::kDefaultSearchProviderSuggestURL, NULL)); |
| 637 EXPECT_EQ(PrefStore::READ_NO_VALUE, | 639 EXPECT_EQ(PrefStore::READ_NO_VALUE, |
| 638 store->GetValue(prefs::kDefaultSearchProviderIconURL, NULL)); | 640 store->GetValue(prefs::kDefaultSearchProviderIconURL, NULL)); |
| 639 EXPECT_EQ(PrefStore::READ_NO_VALUE, | 641 EXPECT_EQ(PrefStore::READ_NO_VALUE, |
| 640 store->GetValue(prefs::kDefaultSearchProviderEncodings, NULL)); | 642 store->GetValue(prefs::kDefaultSearchProviderEncodings, NULL)); |
| 641 } | 643 } |
| 642 | 644 |
| 643 // Checks that if the default search policy is invalid, that no elements of the | 645 // Checks that if the default search policy is invalid, that no elements of the |
| 644 // default search policy will be present. | 646 // default search policy will be present. |
| 645 TEST_F(ConfigurationPolicyPrefStoreDefaultSearchTest, Invalid) { | 647 TEST_F(ConfigurationPolicyPrefStoreDefaultSearchTest, Invalid) { |
| 646 const char* const bad_search_url = "http://test.com/noSearchTerms"; | 648 const char* const bad_search_url = "http://test.com/noSearchTerms"; |
| 647 const char* const suggest_url = "http://test.com/sugg?t={searchTerms}"; | 649 const char* const suggest_url = "http://test.com/sugg?t={searchTerms}"; |
| 648 const char* const icon_url = "http://test.com/icon.jpg"; | 650 const char* const icon_url = "http://test.com/icon.jpg"; |
| 649 const char* const name = "MyName"; | 651 const char* const name = "MyName"; |
| 650 const char* const keyword = "MyKeyword"; | 652 const char* const keyword = "MyKeyword"; |
| 651 const char* const encodings = "UTF-16;UTF-8"; | 653 ListValue* encodings = new ListValue(); |
| 654 encodings->Append(Value::CreateStringValue("UTF-16")); |
| 655 encodings->Append(Value::CreateStringValue("UTF-8")); |
| 652 MockConfigurationPolicyProvider provider; | 656 MockConfigurationPolicyProvider provider; |
| 653 provider.AddPolicy(kPolicyDefaultSearchProviderEnabled, | 657 provider.AddPolicy(kPolicyDefaultSearchProviderEnabled, |
| 654 Value::CreateBooleanValue(true)); | 658 Value::CreateBooleanValue(true)); |
| 655 provider.AddPolicy(kPolicyDefaultSearchProviderSearchURL, | 659 provider.AddPolicy(kPolicyDefaultSearchProviderSearchURL, |
| 656 Value::CreateStringValue(bad_search_url)); | 660 Value::CreateStringValue(bad_search_url)); |
| 657 provider.AddPolicy(kPolicyDefaultSearchProviderName, | 661 provider.AddPolicy(kPolicyDefaultSearchProviderName, |
| 658 Value::CreateStringValue(name)); | 662 Value::CreateStringValue(name)); |
| 659 provider.AddPolicy(kPolicyDefaultSearchProviderKeyword, | 663 provider.AddPolicy(kPolicyDefaultSearchProviderKeyword, |
| 660 Value::CreateStringValue(keyword)); | 664 Value::CreateStringValue(keyword)); |
| 661 provider.AddPolicy(kPolicyDefaultSearchProviderSuggestURL, | 665 provider.AddPolicy(kPolicyDefaultSearchProviderSuggestURL, |
| 662 Value::CreateStringValue(suggest_url)); | 666 Value::CreateStringValue(suggest_url)); |
| 663 provider.AddPolicy(kPolicyDefaultSearchProviderIconURL, | 667 provider.AddPolicy(kPolicyDefaultSearchProviderIconURL, |
| 664 Value::CreateStringValue(icon_url)); | 668 Value::CreateStringValue(icon_url)); |
| 665 provider.AddPolicy(kPolicyDefaultSearchProviderEncodings, | 669 provider.AddPolicy(kPolicyDefaultSearchProviderEncodings, encodings); |
| 666 Value::CreateStringValue(encodings)); | |
| 667 | 670 |
| 668 scoped_refptr<ConfigurationPolicyPrefStore> store( | 671 scoped_refptr<ConfigurationPolicyPrefStore> store( |
| 669 new ConfigurationPolicyPrefStore(&provider)); | 672 new ConfigurationPolicyPrefStore(&provider)); |
| 670 | 673 |
| 671 EXPECT_EQ(PrefStore::READ_NO_VALUE, | 674 EXPECT_EQ(PrefStore::READ_NO_VALUE, |
| 672 store->GetValue(prefs::kDefaultSearchProviderSearchURL, NULL)); | 675 store->GetValue(prefs::kDefaultSearchProviderSearchURL, NULL)); |
| 673 EXPECT_EQ(PrefStore::READ_NO_VALUE, | 676 EXPECT_EQ(PrefStore::READ_NO_VALUE, |
| 674 store->GetValue(prefs::kDefaultSearchProviderName, NULL)); | 677 store->GetValue(prefs::kDefaultSearchProviderName, NULL)); |
| 675 EXPECT_EQ(PrefStore::READ_NO_VALUE, | 678 EXPECT_EQ(PrefStore::READ_NO_VALUE, |
| 676 store->GetValue(prefs::kDefaultSearchProviderKeyword, NULL)); | 679 store->GetValue(prefs::kDefaultSearchProviderKeyword, NULL)); |
| (...skipping 179 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 856 | 859 |
| 857 provider_.SetInitializationComplete(true); | 860 provider_.SetInitializationComplete(true); |
| 858 EXPECT_FALSE(store_->IsInitializationComplete()); | 861 EXPECT_FALSE(store_->IsInitializationComplete()); |
| 859 | 862 |
| 860 store_->OnUpdatePolicy(); | 863 store_->OnUpdatePolicy(); |
| 861 Mock::VerifyAndClearExpectations(&observer_); | 864 Mock::VerifyAndClearExpectations(&observer_); |
| 862 EXPECT_TRUE(store_->IsInitializationComplete()); | 865 EXPECT_TRUE(store_->IsInitializationComplete()); |
| 863 } | 866 } |
| 864 | 867 |
| 865 } // namespace policy | 868 } // namespace policy |
| OLD | NEW |