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

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

Issue 10854009: Extension white and force lists (set by policy) should have priority over auto-updated Google black… (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Removed loop_.RunAllPending(); Created 8 years, 4 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
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 "chrome/browser/extensions/admin_policy.h" 5 #include "chrome/browser/extensions/admin_policy.h"
6 6
7 #include "base/values.h" 7 #include "base/values.h"
8 #include "chrome/common/extensions/extension.h" 8 #include "chrome/common/extensions/extension.h"
9 #include "chrome/common/extensions/extension_manifest_constants.h" 9 #include "chrome/common/extensions/extension_manifest_constants.h"
10 #include "testing/gtest/include/gtest/gtest.h" 10 #include "testing/gtest/include/gtest/gtest.h"
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
43 EXPECT_TRUE(ap::BlacklistedByDefault(&blacklist)); 43 EXPECT_TRUE(ap::BlacklistedByDefault(&blacklist));
44 44
45 blacklist.Clear(); 45 blacklist.Clear();
46 blacklist.Append(Value::CreateStringValue("*")); 46 blacklist.Append(Value::CreateStringValue("*"));
47 EXPECT_TRUE(ap::BlacklistedByDefault(&blacklist)); 47 EXPECT_TRUE(ap::BlacklistedByDefault(&blacklist));
48 } 48 }
49 49
50 // Tests UserMayLoad for required extensions. 50 // Tests UserMayLoad for required extensions.
51 TEST_F(ExtensionAdminPolicyTest, UserMayLoadRequired) { 51 TEST_F(ExtensionAdminPolicyTest, UserMayLoadRequired) {
52 CreateExtension(Extension::EXTERNAL_POLICY_DOWNLOAD, true); 52 CreateExtension(Extension::EXTERNAL_POLICY_DOWNLOAD, true);
53 EXPECT_TRUE(ap::UserMayLoad(NULL, NULL, extension_.get(), NULL)); 53 EXPECT_TRUE(ap::UserMayLoad(false, NULL, NULL, NULL, extension_.get(), NULL));
54 string16 error; 54 string16 error;
55 EXPECT_TRUE(ap::UserMayLoad(NULL, NULL, extension_.get(), &error)); 55 EXPECT_TRUE(ap::UserMayLoad(false, NULL, NULL, NULL, extension_.get(),
56 &error));
56 EXPECT_TRUE(error.empty()); 57 EXPECT_TRUE(error.empty());
57 58
58 // Required extensions may load even if they're on the blacklist. 59 // Required extensions may load even if they're on the blacklist.
Mattias Nissler (ping if slow) 2012/08/13 16:54:53 add tests here and below to make sure the admin bl
59 base::ListValue blacklist; 60 base::ListValue blacklist;
60 blacklist.Append(Value::CreateStringValue(extension_->id())); 61 blacklist.Append(Value::CreateStringValue(extension_->id()));
61 EXPECT_TRUE(ap::UserMayLoad(&blacklist, NULL, extension_.get(), NULL)); 62 EXPECT_TRUE(ap::UserMayLoad(false, &blacklist, NULL, NULL, extension_.get(),
63 NULL));
62 64
63 blacklist.Append(Value::CreateStringValue("*")); 65 blacklist.Append(Value::CreateStringValue("*"));
64 EXPECT_TRUE(ap::UserMayLoad(&blacklist, NULL, extension_.get(), NULL)); 66 EXPECT_TRUE(ap::UserMayLoad(false, &blacklist, NULL, NULL, extension_.get(),
67 NULL));
65 } 68 }
66 69
67 // Tests UserMayLoad when no blacklist exists, or it's empty. 70 // Tests UserMayLoad when no blacklist exists, or it's empty.
68 TEST_F(ExtensionAdminPolicyTest, UserMayLoadNoBlacklist) { 71 TEST_F(ExtensionAdminPolicyTest, UserMayLoadNoBlacklist) {
69 CreateExtension(Extension::INTERNAL, false); 72 CreateExtension(Extension::INTERNAL, false);
70 EXPECT_TRUE(ap::UserMayLoad(NULL, NULL, extension_.get(), NULL)); 73 EXPECT_TRUE(ap::UserMayLoad(false, NULL, NULL, NULL, extension_.get(), NULL));
71 base::ListValue blacklist; 74 base::ListValue blacklist;
72 EXPECT_TRUE(ap::UserMayLoad(&blacklist, NULL, extension_.get(), NULL)); 75 EXPECT_TRUE(ap::UserMayLoad(false, &blacklist, NULL, NULL, extension_.get(),
76 NULL));
73 string16 error; 77 string16 error;
74 EXPECT_TRUE(ap::UserMayLoad(&blacklist, NULL, extension_.get(), &error)); 78 EXPECT_TRUE(ap::UserMayLoad(false, &blacklist, NULL, NULL, extension_.get(),
79 &error));
75 EXPECT_TRUE(error.empty()); 80 EXPECT_TRUE(error.empty());
76 } 81 }
77 82
78 // Tests UserMayLoad for an extension on the whitelist. 83 // Tests UserMayLoad for an extension on the whitelist.
79 TEST_F(ExtensionAdminPolicyTest, UserMayLoadWhitelisted) { 84 TEST_F(ExtensionAdminPolicyTest, UserMayLoadWhitelisted) {
80 CreateExtension(Extension::INTERNAL, false); 85 CreateExtension(Extension::INTERNAL, false);
81 86
82 base::ListValue whitelist; 87 base::ListValue whitelist;
83 whitelist.Append(Value::CreateStringValue(extension_->id())); 88 whitelist.Append(Value::CreateStringValue(extension_->id()));
84 EXPECT_TRUE(ap::UserMayLoad(NULL, &whitelist, extension_.get(), NULL)); 89 EXPECT_TRUE(ap::UserMayLoad(false, NULL, &whitelist, NULL, extension_.get(),
90 NULL));
85 91
86 base::ListValue blacklist; 92 base::ListValue blacklist;
87 blacklist.Append(Value::CreateStringValue(extension_->id())); 93 blacklist.Append(Value::CreateStringValue(extension_->id()));
88 EXPECT_TRUE(ap::UserMayLoad(NULL, &whitelist, extension_.get(), NULL)); 94 EXPECT_TRUE(ap::UserMayLoad(false, NULL, &whitelist, NULL, extension_.get(),
95 NULL));
89 string16 error; 96 string16 error;
90 EXPECT_TRUE(ap::UserMayLoad(NULL, &whitelist, extension_.get(), &error)); 97 EXPECT_TRUE(ap::UserMayLoad(false, NULL, &whitelist, NULL, extension_.get(),
98 &error));
91 EXPECT_TRUE(error.empty()); 99 EXPECT_TRUE(error.empty());
92 } 100 }
93 101
94 // Tests UserMayLoad for an extension on the blacklist. 102 // Tests UserMayLoad for an extension on the blacklist.
95 TEST_F(ExtensionAdminPolicyTest, UserMayLoadBlacklisted) { 103 TEST_F(ExtensionAdminPolicyTest, UserMayLoadBlacklisted) {
96 CreateExtension(Extension::INTERNAL, false); 104 CreateExtension(Extension::INTERNAL, false);
97 105
98 // Blacklisted by default. 106 // Blacklisted by default.
99 base::ListValue blacklist; 107 base::ListValue blacklist;
100 blacklist.Append(Value::CreateStringValue("*")); 108 blacklist.Append(Value::CreateStringValue("*"));
101 EXPECT_FALSE(ap::UserMayLoad(&blacklist, NULL, extension_.get(), NULL)); 109 EXPECT_FALSE(ap::UserMayLoad(false, &blacklist, NULL, NULL, extension_.get(),
110 NULL));
102 string16 error; 111 string16 error;
103 EXPECT_FALSE(ap::UserMayLoad(&blacklist, NULL, extension_.get(), &error)); 112 EXPECT_FALSE(ap::UserMayLoad(false, &blacklist, NULL, NULL, extension_.get(),
113 &error));
104 EXPECT_FALSE(error.empty()); 114 EXPECT_FALSE(error.empty());
105 115
106 // Extension on the blacklist, with and without wildcard. 116 // Extension on the blacklist, with and without wildcard.
107 blacklist.Append(Value::CreateStringValue(extension_->id())); 117 blacklist.Append(Value::CreateStringValue(extension_->id()));
108 EXPECT_FALSE(ap::UserMayLoad(&blacklist, NULL, extension_.get(), NULL)); 118 EXPECT_FALSE(ap::UserMayLoad(false, &blacklist, NULL, NULL, extension_.get(),
119 NULL));
109 blacklist.Clear(); 120 blacklist.Clear();
110 blacklist.Append(Value::CreateStringValue(extension_->id())); 121 blacklist.Append(Value::CreateStringValue(extension_->id()));
111 EXPECT_FALSE(ap::UserMayLoad(&blacklist, NULL, extension_.get(), NULL)); 122 EXPECT_FALSE(ap::UserMayLoad(false, &blacklist, NULL, NULL, extension_.get(),
123 NULL));
112 124
113 // With a whitelist. There's no such thing as a whitelist wildcard. 125 // With a whitelist. There's no such thing as a whitelist wildcard.
114 base::ListValue whitelist; 126 base::ListValue whitelist;
115 whitelist.Append( 127 whitelist.Append(
116 Value::CreateStringValue("behllobkkfkfnphdnhnkndlbkcpglgmj")); 128 Value::CreateStringValue("behllobkkfkfnphdnhnkndlbkcpglgmj"));
117 EXPECT_FALSE(ap::UserMayLoad(&blacklist, &whitelist, extension_.get(), NULL)); 129 EXPECT_FALSE(ap::UserMayLoad(false, &blacklist, &whitelist, NULL,
130 extension_.get(), NULL));
118 whitelist.Append(Value::CreateStringValue("*")); 131 whitelist.Append(Value::CreateStringValue("*"));
119 EXPECT_FALSE(ap::UserMayLoad(&blacklist, &whitelist, extension_.get(), NULL)); 132 EXPECT_FALSE(ap::UserMayLoad(false, &blacklist, &whitelist, NULL,
133 extension_.get(), NULL));
120 } 134 }
121 135
122 TEST_F(ExtensionAdminPolicyTest, UserMayModifySettings) { 136 TEST_F(ExtensionAdminPolicyTest, UserMayModifySettings) {
123 CreateExtension(Extension::INTERNAL, false); 137 CreateExtension(Extension::INTERNAL, false);
124 EXPECT_TRUE(ap::UserMayModifySettings(extension_.get(), NULL)); 138 EXPECT_TRUE(ap::UserMayModifySettings(extension_.get(), NULL));
125 string16 error; 139 string16 error;
126 EXPECT_TRUE(ap::UserMayModifySettings(extension_.get(), &error)); 140 EXPECT_TRUE(ap::UserMayModifySettings(extension_.get(), &error));
127 EXPECT_TRUE(error.empty()); 141 EXPECT_TRUE(error.empty());
128 142
129 CreateExtension(Extension::EXTERNAL_POLICY_DOWNLOAD, true); 143 CreateExtension(Extension::EXTERNAL_POLICY_DOWNLOAD, true);
130 error.clear(); 144 error.clear();
131 EXPECT_FALSE(ap::UserMayModifySettings(extension_.get(), NULL)); 145 EXPECT_FALSE(ap::UserMayModifySettings(extension_.get(), NULL));
132 EXPECT_FALSE(ap::UserMayModifySettings(extension_.get(), &error)); 146 EXPECT_FALSE(ap::UserMayModifySettings(extension_.get(), &error));
133 EXPECT_FALSE(error.empty()); 147 EXPECT_FALSE(error.empty());
134 } 148 }
135 149
136 TEST_F(ExtensionAdminPolicyTest, MustRemainEnabled) { 150 TEST_F(ExtensionAdminPolicyTest, MustRemainEnabled) {
137 CreateExtension(Extension::EXTERNAL_POLICY_DOWNLOAD, true); 151 CreateExtension(Extension::EXTERNAL_POLICY_DOWNLOAD, true);
138 EXPECT_TRUE(ap::MustRemainEnabled(extension_.get(), NULL)); 152 EXPECT_TRUE(ap::MustRemainEnabled(extension_.get(), NULL));
139 string16 error; 153 string16 error;
140 EXPECT_TRUE(ap::MustRemainEnabled(extension_.get(), &error)); 154 EXPECT_TRUE(ap::MustRemainEnabled(extension_.get(), &error));
141 EXPECT_FALSE(error.empty()); 155 EXPECT_FALSE(error.empty());
142 156
143 CreateExtension(Extension::INTERNAL, false); 157 CreateExtension(Extension::INTERNAL, false);
144 error.clear(); 158 error.clear();
145 EXPECT_FALSE(ap::MustRemainEnabled(extension_.get(), NULL)); 159 EXPECT_FALSE(ap::MustRemainEnabled(extension_.get(), NULL));
146 EXPECT_FALSE(ap::MustRemainEnabled(extension_.get(), &error)); 160 EXPECT_FALSE(ap::MustRemainEnabled(extension_.get(), &error));
147 EXPECT_TRUE(error.empty()); 161 EXPECT_TRUE(error.empty());
148 } 162 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698