Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(759)

Side by Side Diff: chrome/browser/extensions/extension_prefs_unittest.cc

Issue 10382149: Refactor the various ways to control what users can do to extensions. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Addressing comments from partial review Created 8 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
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
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) {}
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698