| 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 "extension_prefs_unittest.h" | 5 #include "extension_prefs_unittest.h" |
| 6 | 6 |
| 7 #include "base/path_service.h" | 7 #include "base/path_service.h" |
| 8 #include "base/scoped_temp_dir.h" | 8 #include "base/scoped_temp_dir.h" |
| 9 #include "base/stl_util.h" | 9 #include "base/stl_util.h" |
| 10 #include "base/string_number_conversions.h" | 10 #include "base/string_number_conversions.h" |
| (...skipping 1122 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1133 ++iteration_; | 1133 ++iteration_; |
| 1134 } else { | 1134 } else { |
| 1135 EXPECT_EQ(kDefaultPref1, actual); | 1135 EXPECT_EQ(kDefaultPref1, actual); |
| 1136 } | 1136 } |
| 1137 } | 1137 } |
| 1138 | 1138 |
| 1139 private: | 1139 private: |
| 1140 int iteration_; | 1140 int iteration_; |
| 1141 }; | 1141 }; |
| 1142 TEST_F(ExtensionPrefsDisableExtensions, ExtensionPrefsDisableExtensions) {} | 1142 TEST_F(ExtensionPrefsDisableExtensions, ExtensionPrefsDisableExtensions) {} |
| 1143 |
| 1144 // Parent class for testing the ManagementPolicy provider methods. |
| 1145 class ExtensionPrefsManagementPolicyProvider : public ExtensionPrefsTest { |
| 1146 public: |
| 1147 virtual void Initialize() {} |
| 1148 virtual void Verify() {} |
| 1149 |
| 1150 void InitializeWithLocation(Extension::Location location, bool required) { |
| 1151 ASSERT_EQ(required, Extension::IsRequired(location)); |
| 1152 |
| 1153 DictionaryValue values; |
| 1154 values.SetString(keys::kName, "test"); |
| 1155 values.SetString(keys::kVersion, "0.1"); |
| 1156 std::string error; |
| 1157 extension_ = Extension::Create(FilePath(), location, values, |
| 1158 Extension::NO_FLAGS, &error); |
| 1159 ASSERT_TRUE(extension_.get()); |
| 1160 } |
| 1161 |
| 1162 protected: |
| 1163 scoped_refptr<Extension> extension_; |
| 1164 }; |
| 1165 |
| 1166 // Tests the behavior of the ManagementPolicy provider methods for an |
| 1167 // extension required by policy. |
| 1168 class ExtensionPrefsRequiredExtension |
| 1169 : public ExtensionPrefsManagementPolicyProvider { |
| 1170 public: |
| 1171 virtual void Initialize() { |
| 1172 InitializeWithLocation(Extension::EXTERNAL_POLICY_DOWNLOAD, true); |
| 1173 } |
| 1174 |
| 1175 virtual void Verify() { |
| 1176 string16 error16; |
| 1177 EXPECT_TRUE(prefs()->UserMayLoad(extension_.get(), &error16)); |
| 1178 EXPECT_EQ(string16(), error16); |
| 1179 |
| 1180 // We won't check the exact wording of the error, but it should say |
| 1181 // something. |
| 1182 EXPECT_FALSE(prefs()->UserMayModifySettings(extension_.get(), &error16)); |
| 1183 EXPECT_NE(string16(), error16); |
| 1184 EXPECT_TRUE(prefs()->MustRemainEnabled(extension_.get(), &error16)); |
| 1185 EXPECT_NE(string16(), error16); |
| 1186 } |
| 1187 }; |
| 1188 TEST_F(ExtensionPrefsRequiredExtension, RequiredExtension) {} |
| 1189 |
| 1190 // Tests the behavior of the ManagementPolicy provider methods for an |
| 1191 // extension required by policy. |
| 1192 class ExtensionPrefsNotRequiredExtension |
| 1193 : public ExtensionPrefsManagementPolicyProvider { |
| 1194 public: |
| 1195 virtual void Initialize() { |
| 1196 InitializeWithLocation(Extension::INTERNAL, false); |
| 1197 } |
| 1198 |
| 1199 virtual void Verify() { |
| 1200 string16 error16; |
| 1201 EXPECT_TRUE(prefs()->UserMayLoad(extension_.get(), &error16)); |
| 1202 EXPECT_EQ(string16(), error16); |
| 1203 EXPECT_TRUE(prefs()->UserMayModifySettings(extension_.get(), &error16)); |
| 1204 EXPECT_EQ(string16(), error16); |
| 1205 EXPECT_FALSE(prefs()->MustRemainEnabled(extension_.get(), &error16)); |
| 1206 EXPECT_EQ(string16(), error16); |
| 1207 } |
| 1208 }; |
| 1209 TEST_F(ExtensionPrefsNotRequiredExtension, NotRequiredExtension) {} |
| OLD | NEW |