OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "chrome/browser/extensions/extension_management.h" | 5 #include "chrome/browser/extensions/extension_management.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 #include <memory> | 8 #include <memory> |
9 #include <string> | 9 #include <string> |
10 #include <vector> | 10 #include <vector> |
(...skipping 719 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
730 EXPECT_FALSE(extension_management_->IsInstallationExplicitlyAllowed(blocked)); | 730 EXPECT_FALSE(extension_management_->IsInstallationExplicitlyAllowed(blocked)); |
731 EXPECT_FALSE( | 731 EXPECT_FALSE( |
732 extension_management_->IsInstallationExplicitlyAllowed(not_specified)); | 732 extension_management_->IsInstallationExplicitlyAllowed(not_specified)); |
733 } | 733 } |
734 | 734 |
735 // Tests the flag value indicating that extensions are blacklisted by default. | 735 // Tests the flag value indicating that extensions are blacklisted by default. |
736 TEST_F(ExtensionAdminPolicyTest, BlacklistedByDefault) { | 736 TEST_F(ExtensionAdminPolicyTest, BlacklistedByDefault) { |
737 EXPECT_FALSE(BlacklistedByDefault(NULL)); | 737 EXPECT_FALSE(BlacklistedByDefault(NULL)); |
738 | 738 |
739 base::ListValue blacklist; | 739 base::ListValue blacklist; |
740 blacklist.Append(new base::StringValue(kNonExistingExtension)); | 740 blacklist.AppendString(kNonExistingExtension); |
741 EXPECT_FALSE(BlacklistedByDefault(&blacklist)); | 741 EXPECT_FALSE(BlacklistedByDefault(&blacklist)); |
742 blacklist.Append(new base::StringValue("*")); | 742 blacklist.AppendString("*"); |
743 EXPECT_TRUE(BlacklistedByDefault(&blacklist)); | 743 EXPECT_TRUE(BlacklistedByDefault(&blacklist)); |
744 | 744 |
745 blacklist.Clear(); | 745 blacklist.Clear(); |
746 blacklist.Append(new base::StringValue("*")); | 746 blacklist.AppendString("*"); |
747 EXPECT_TRUE(BlacklistedByDefault(&blacklist)); | 747 EXPECT_TRUE(BlacklistedByDefault(&blacklist)); |
748 } | 748 } |
749 | 749 |
750 // Tests UserMayLoad for required extensions. | 750 // Tests UserMayLoad for required extensions. |
751 TEST_F(ExtensionAdminPolicyTest, UserMayLoadRequired) { | 751 TEST_F(ExtensionAdminPolicyTest, UserMayLoadRequired) { |
752 CreateExtension(Manifest::COMPONENT); | 752 CreateExtension(Manifest::COMPONENT); |
753 EXPECT_TRUE(UserMayLoad(NULL, NULL, NULL, NULL, extension_.get(), NULL)); | 753 EXPECT_TRUE(UserMayLoad(NULL, NULL, NULL, NULL, extension_.get(), NULL)); |
754 base::string16 error; | 754 base::string16 error; |
755 EXPECT_TRUE(UserMayLoad(NULL, NULL, NULL, NULL, extension_.get(), &error)); | 755 EXPECT_TRUE(UserMayLoad(NULL, NULL, NULL, NULL, extension_.get(), &error)); |
756 EXPECT_TRUE(error.empty()); | 756 EXPECT_TRUE(error.empty()); |
757 | 757 |
758 // Required extensions may load even if they're on the blacklist. | 758 // Required extensions may load even if they're on the blacklist. |
759 base::ListValue blacklist; | 759 base::ListValue blacklist; |
760 blacklist.Append(new base::StringValue(extension_->id())); | 760 blacklist.AppendString(extension_->id()); |
761 EXPECT_TRUE( | 761 EXPECT_TRUE( |
762 UserMayLoad(&blacklist, NULL, NULL, NULL, extension_.get(), NULL)); | 762 UserMayLoad(&blacklist, NULL, NULL, NULL, extension_.get(), NULL)); |
763 | 763 |
764 blacklist.Append(new base::StringValue("*")); | 764 blacklist.AppendString("*"); |
765 EXPECT_TRUE( | 765 EXPECT_TRUE( |
766 UserMayLoad(&blacklist, NULL, NULL, NULL, extension_.get(), NULL)); | 766 UserMayLoad(&blacklist, NULL, NULL, NULL, extension_.get(), NULL)); |
767 } | 767 } |
768 | 768 |
769 // Tests UserMayLoad when no blacklist exists, or it's empty. | 769 // Tests UserMayLoad when no blacklist exists, or it's empty. |
770 TEST_F(ExtensionAdminPolicyTest, UserMayLoadNoBlacklist) { | 770 TEST_F(ExtensionAdminPolicyTest, UserMayLoadNoBlacklist) { |
771 CreateExtension(Manifest::INTERNAL); | 771 CreateExtension(Manifest::INTERNAL); |
772 EXPECT_TRUE(UserMayLoad(NULL, NULL, NULL, NULL, extension_.get(), NULL)); | 772 EXPECT_TRUE(UserMayLoad(NULL, NULL, NULL, NULL, extension_.get(), NULL)); |
773 base::ListValue blacklist; | 773 base::ListValue blacklist; |
774 EXPECT_TRUE( | 774 EXPECT_TRUE( |
775 UserMayLoad(&blacklist, NULL, NULL, NULL, extension_.get(), NULL)); | 775 UserMayLoad(&blacklist, NULL, NULL, NULL, extension_.get(), NULL)); |
776 base::string16 error; | 776 base::string16 error; |
777 EXPECT_TRUE( | 777 EXPECT_TRUE( |
778 UserMayLoad(&blacklist, NULL, NULL, NULL, extension_.get(), &error)); | 778 UserMayLoad(&blacklist, NULL, NULL, NULL, extension_.get(), &error)); |
779 EXPECT_TRUE(error.empty()); | 779 EXPECT_TRUE(error.empty()); |
780 } | 780 } |
781 | 781 |
782 // Tests UserMayLoad for an extension on the whitelist. | 782 // Tests UserMayLoad for an extension on the whitelist. |
783 TEST_F(ExtensionAdminPolicyTest, UserMayLoadWhitelisted) { | 783 TEST_F(ExtensionAdminPolicyTest, UserMayLoadWhitelisted) { |
784 CreateExtension(Manifest::INTERNAL); | 784 CreateExtension(Manifest::INTERNAL); |
785 | 785 |
786 base::ListValue whitelist; | 786 base::ListValue whitelist; |
787 whitelist.Append(new base::StringValue(extension_->id())); | 787 whitelist.AppendString(extension_->id()); |
788 EXPECT_TRUE( | 788 EXPECT_TRUE( |
789 UserMayLoad(NULL, &whitelist, NULL, NULL, extension_.get(), NULL)); | 789 UserMayLoad(NULL, &whitelist, NULL, NULL, extension_.get(), NULL)); |
790 | 790 |
791 base::ListValue blacklist; | 791 base::ListValue blacklist; |
792 blacklist.Append(new base::StringValue(extension_->id())); | 792 blacklist.AppendString(extension_->id()); |
793 EXPECT_TRUE( | 793 EXPECT_TRUE( |
794 UserMayLoad(NULL, &whitelist, NULL, NULL, extension_.get(), NULL)); | 794 UserMayLoad(NULL, &whitelist, NULL, NULL, extension_.get(), NULL)); |
795 base::string16 error; | 795 base::string16 error; |
796 EXPECT_TRUE( | 796 EXPECT_TRUE( |
797 UserMayLoad(NULL, &whitelist, NULL, NULL, extension_.get(), &error)); | 797 UserMayLoad(NULL, &whitelist, NULL, NULL, extension_.get(), &error)); |
798 EXPECT_TRUE(error.empty()); | 798 EXPECT_TRUE(error.empty()); |
799 } | 799 } |
800 | 800 |
801 // Tests UserMayLoad for an extension on the blacklist. | 801 // Tests UserMayLoad for an extension on the blacklist. |
802 TEST_F(ExtensionAdminPolicyTest, UserMayLoadBlacklisted) { | 802 TEST_F(ExtensionAdminPolicyTest, UserMayLoadBlacklisted) { |
803 CreateExtension(Manifest::INTERNAL); | 803 CreateExtension(Manifest::INTERNAL); |
804 | 804 |
805 // Blacklisted by default. | 805 // Blacklisted by default. |
806 base::ListValue blacklist; | 806 base::ListValue blacklist; |
807 blacklist.Append(new base::StringValue("*")); | 807 blacklist.AppendString("*"); |
808 EXPECT_FALSE( | 808 EXPECT_FALSE( |
809 UserMayLoad(&blacklist, NULL, NULL, NULL, extension_.get(), NULL)); | 809 UserMayLoad(&blacklist, NULL, NULL, NULL, extension_.get(), NULL)); |
810 base::string16 error; | 810 base::string16 error; |
811 EXPECT_FALSE( | 811 EXPECT_FALSE( |
812 UserMayLoad(&blacklist, NULL, NULL, NULL, extension_.get(), &error)); | 812 UserMayLoad(&blacklist, NULL, NULL, NULL, extension_.get(), &error)); |
813 EXPECT_FALSE(error.empty()); | 813 EXPECT_FALSE(error.empty()); |
814 | 814 |
815 // Extension on the blacklist, with and without wildcard. | 815 // Extension on the blacklist, with and without wildcard. |
816 blacklist.Append(new base::StringValue(extension_->id())); | 816 blacklist.AppendString(extension_->id()); |
817 EXPECT_FALSE( | 817 EXPECT_FALSE( |
818 UserMayLoad(&blacklist, NULL, NULL, NULL, extension_.get(), NULL)); | 818 UserMayLoad(&blacklist, NULL, NULL, NULL, extension_.get(), NULL)); |
819 blacklist.Clear(); | 819 blacklist.Clear(); |
820 blacklist.Append(new base::StringValue(extension_->id())); | 820 blacklist.AppendString(extension_->id()); |
821 EXPECT_FALSE( | 821 EXPECT_FALSE( |
822 UserMayLoad(&blacklist, NULL, NULL, NULL, extension_.get(), NULL)); | 822 UserMayLoad(&blacklist, NULL, NULL, NULL, extension_.get(), NULL)); |
823 | 823 |
824 // With a whitelist. There's no such thing as a whitelist wildcard. | 824 // With a whitelist. There's no such thing as a whitelist wildcard. |
825 base::ListValue whitelist; | 825 base::ListValue whitelist; |
826 whitelist.Append(new base::StringValue("behllobkkfkfnphdnhnkndlbkcpglgmj")); | 826 whitelist.AppendString("behllobkkfkfnphdnhnkndlbkcpglgmj"); |
827 EXPECT_FALSE( | 827 EXPECT_FALSE( |
828 UserMayLoad(&blacklist, &whitelist, NULL, NULL, extension_.get(), NULL)); | 828 UserMayLoad(&blacklist, &whitelist, NULL, NULL, extension_.get(), NULL)); |
829 whitelist.Append(new base::StringValue("*")); | 829 whitelist.AppendString("*"); |
830 EXPECT_FALSE( | 830 EXPECT_FALSE( |
831 UserMayLoad(&blacklist, &whitelist, NULL, NULL, extension_.get(), NULL)); | 831 UserMayLoad(&blacklist, &whitelist, NULL, NULL, extension_.get(), NULL)); |
832 } | 832 } |
833 | 833 |
834 TEST_F(ExtensionAdminPolicyTest, UserMayLoadAllowedTypes) { | 834 TEST_F(ExtensionAdminPolicyTest, UserMayLoadAllowedTypes) { |
835 CreateExtension(Manifest::INTERNAL); | 835 CreateExtension(Manifest::INTERNAL); |
836 EXPECT_TRUE(UserMayLoad(NULL, NULL, NULL, NULL, extension_.get(), NULL)); | 836 EXPECT_TRUE(UserMayLoad(NULL, NULL, NULL, NULL, extension_.get(), NULL)); |
837 | 837 |
838 base::ListValue allowed_types; | 838 base::ListValue allowed_types; |
839 EXPECT_FALSE( | 839 EXPECT_FALSE( |
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
874 EXPECT_FALSE(error.empty()); | 874 EXPECT_FALSE(error.empty()); |
875 | 875 |
876 CreateExtension(Manifest::INTERNAL); | 876 CreateExtension(Manifest::INTERNAL); |
877 error.clear(); | 877 error.clear(); |
878 EXPECT_FALSE(MustRemainEnabled(extension_.get(), NULL)); | 878 EXPECT_FALSE(MustRemainEnabled(extension_.get(), NULL)); |
879 EXPECT_FALSE(MustRemainEnabled(extension_.get(), &error)); | 879 EXPECT_FALSE(MustRemainEnabled(extension_.get(), &error)); |
880 EXPECT_TRUE(error.empty()); | 880 EXPECT_TRUE(error.empty()); |
881 } | 881 } |
882 | 882 |
883 } // namespace extensions | 883 } // namespace extensions |
OLD | NEW |