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

Side by Side Diff: chrome/common/extensions/api/identity/extension_manifests_auth_unittest.cc

Issue 578653005: Revert "Refactor ExtensionManifestTest to allow usage in src/extensions" (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 3 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 "base/test/values_test_util.h" 5 #include "base/test/values_test_util.h"
6 #include "chrome/common/extensions/api/identity/oauth2_manifest_handler.h" 6 #include "chrome/common/extensions/api/identity/oauth2_manifest_handler.h"
7 #include "chrome/common/extensions/manifest_tests/chrome_manifest_test.h" 7 #include "chrome/common/extensions/manifest_tests/extension_manifest_test.h"
8 #include "extensions/common/manifest_constants.h" 8 #include "extensions/common/manifest_constants.h"
9 #include "testing/gtest/include/gtest/gtest.h" 9 #include "testing/gtest/include/gtest/gtest.h"
10 10
11 namespace extensions { 11 namespace extensions {
12 12
13 namespace keys = manifest_keys; 13 namespace keys = manifest_keys;
14 namespace errors = manifest_errors; 14 namespace errors = manifest_errors;
15 15
16 namespace { 16 namespace {
17 17
18 // Produces extension ID = "mdbihdcgjmagbcapkhhkjbbdlkflmbfo". 18 // Produces extension ID = "mdbihdcgjmagbcapkhhkjbbdlkflmbfo".
19 const char kExtensionKey[] = 19 const char kExtensionKey[] =
20 "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCV9PlZjcTIXfnlB3HXo50OlM/CnIq0y7jm" 20 "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCV9PlZjcTIXfnlB3HXo50OlM/CnIq0y7jm"
21 "KfPVyStaWsmFB7NaVnqUXoGb9swBDfVnZ6BrupwnxL76TWEJPo+KQMJ6uz0PPdJWi2jQfZiG" 21 "KfPVyStaWsmFB7NaVnqUXoGb9swBDfVnZ6BrupwnxL76TWEJPo+KQMJ6uz0PPdJWi2jQfZiG"
22 "iheDiKH5Gv+dVd67qf7ly8QWW0o8qmFpqBZQpksm1hOGbfsupv9W4c42tMEIicDMLQIDAQAB"; 22 "iheDiKH5Gv+dVd67qf7ly8QWW0o8qmFpqBZQpksm1hOGbfsupv9W4c42tMEIicDMLQIDAQAB";
23 const char kAutoApproveNotAllowedWarning[] = 23 const char kAutoApproveNotAllowedWarning[] =
24 "'oauth2.auto_approve' is not allowed for specified extension ID."; 24 "'oauth2.auto_approve' is not allowed for specified extension ID.";
25 25
26 } // namespace 26 } // namespace
27 27
28 class OAuth2ManifestTest : public ChromeManifestTest { 28 class OAuth2ManifestTest : public ExtensionManifestTest {
29 protected: 29 protected:
30 enum AutoApproveValue { 30 enum AutoApproveValue {
31 AUTO_APPROVE_NOT_SET, 31 AUTO_APPROVE_NOT_SET,
32 AUTO_APPROVE_FALSE, 32 AUTO_APPROVE_FALSE,
33 AUTO_APPROVE_TRUE, 33 AUTO_APPROVE_TRUE,
34 AUTO_APPROVE_INVALID 34 AUTO_APPROVE_INVALID
35 }; 35 };
36 36
37 enum ClientIdValue { 37 enum ClientIdValue {
38 CLIENT_ID_DEFAULT, 38 CLIENT_ID_DEFAULT,
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after
100 100
101 // OAuth2 section should be parsed for an extension. 101 // OAuth2 section should be parsed for an extension.
102 { 102 {
103 base::DictionaryValue ext_manifest; 103 base::DictionaryValue ext_manifest;
104 // Lack of "app" section representa an extension. So the base manifest 104 // Lack of "app" section representa an extension. So the base manifest
105 // itself represents an extension. 105 // itself represents an extension.
106 ext_manifest.MergeDictionary(&base_manifest); 106 ext_manifest.MergeDictionary(&base_manifest);
107 ext_manifest.SetString(keys::kKey, kExtensionKey); 107 ext_manifest.SetString(keys::kKey, kExtensionKey);
108 ext_manifest.SetBoolean(keys::kOAuth2AutoApprove, true); 108 ext_manifest.SetBoolean(keys::kOAuth2AutoApprove, true);
109 109
110 ManifestData manifest(&ext_manifest, "test"); 110 Manifest manifest(&ext_manifest, "test");
111 scoped_refptr<extensions::Extension> extension = 111 scoped_refptr<extensions::Extension> extension =
112 LoadAndExpectSuccess(manifest); 112 LoadAndExpectSuccess(manifest);
113 EXPECT_TRUE(extension->install_warnings().empty()); 113 EXPECT_TRUE(extension->install_warnings().empty());
114 EXPECT_EQ("client1", OAuth2Info::GetOAuth2Info(extension.get()).client_id); 114 EXPECT_EQ("client1", OAuth2Info::GetOAuth2Info(extension.get()).client_id);
115 EXPECT_EQ(2U, OAuth2Info::GetOAuth2Info(extension.get()).scopes.size()); 115 EXPECT_EQ(2U, OAuth2Info::GetOAuth2Info(extension.get()).scopes.size());
116 EXPECT_EQ("scope1", OAuth2Info::GetOAuth2Info(extension.get()).scopes[0]); 116 EXPECT_EQ("scope1", OAuth2Info::GetOAuth2Info(extension.get()).scopes[0]);
117 EXPECT_EQ("scope2", OAuth2Info::GetOAuth2Info(extension.get()).scopes[1]); 117 EXPECT_EQ("scope2", OAuth2Info::GetOAuth2Info(extension.get()).scopes[1]);
118 EXPECT_TRUE(OAuth2Info::GetOAuth2Info(extension.get()).auto_approve); 118 EXPECT_TRUE(OAuth2Info::GetOAuth2Info(extension.get()).auto_approve);
119 } 119 }
120 120
121 // OAuth2 section should be parsed for a packaged app. 121 // OAuth2 section should be parsed for a packaged app.
122 { 122 {
123 base::DictionaryValue app_manifest; 123 base::DictionaryValue app_manifest;
124 app_manifest.SetString(keys::kLaunchLocalPath, "launch.html"); 124 app_manifest.SetString(keys::kLaunchLocalPath, "launch.html");
125 app_manifest.MergeDictionary(&base_manifest); 125 app_manifest.MergeDictionary(&base_manifest);
126 126
127 ManifestData manifest(&app_manifest, "test"); 127 Manifest manifest(&app_manifest, "test");
128 scoped_refptr<extensions::Extension> extension = 128 scoped_refptr<extensions::Extension> extension =
129 LoadAndExpectSuccess(manifest); 129 LoadAndExpectSuccess(manifest);
130 EXPECT_TRUE(extension->install_warnings().empty()); 130 EXPECT_TRUE(extension->install_warnings().empty());
131 EXPECT_EQ("client1", OAuth2Info::GetOAuth2Info(extension.get()).client_id); 131 EXPECT_EQ("client1", OAuth2Info::GetOAuth2Info(extension.get()).client_id);
132 EXPECT_EQ(2U, OAuth2Info::GetOAuth2Info(extension.get()).scopes.size()); 132 EXPECT_EQ(2U, OAuth2Info::GetOAuth2Info(extension.get()).scopes.size());
133 EXPECT_EQ("scope1", OAuth2Info::GetOAuth2Info(extension.get()).scopes[0]); 133 EXPECT_EQ("scope1", OAuth2Info::GetOAuth2Info(extension.get()).scopes[0]);
134 EXPECT_EQ("scope2", OAuth2Info::GetOAuth2Info(extension.get()).scopes[1]); 134 EXPECT_EQ("scope2", OAuth2Info::GetOAuth2Info(extension.get()).scopes[1]);
135 EXPECT_FALSE(OAuth2Info::GetOAuth2Info(extension.get()).auto_approve); 135 EXPECT_FALSE(OAuth2Info::GetOAuth2Info(extension.get()).auto_approve);
136 } 136 }
137 137
138 // OAuth2 section should NOT be parsed for a hosted app. 138 // OAuth2 section should NOT be parsed for a hosted app.
139 { 139 {
140 base::DictionaryValue app_manifest; 140 base::DictionaryValue app_manifest;
141 app_manifest.SetString(keys::kLaunchWebURL, "http://www.google.com"); 141 app_manifest.SetString(keys::kLaunchWebURL, "http://www.google.com");
142 app_manifest.MergeDictionary(&base_manifest); 142 app_manifest.MergeDictionary(&base_manifest);
143 143
144 ManifestData manifest(&app_manifest, "test"); 144 Manifest manifest(&app_manifest, "test");
145 scoped_refptr<extensions::Extension> extension = 145 scoped_refptr<extensions::Extension> extension =
146 LoadAndExpectSuccess(manifest); 146 LoadAndExpectSuccess(manifest);
147 EXPECT_EQ(1U, extension->install_warnings().size()); 147 EXPECT_EQ(1U, extension->install_warnings().size());
148 const extensions::InstallWarning& warning = 148 const extensions::InstallWarning& warning =
149 extension->install_warnings()[0]; 149 extension->install_warnings()[0];
150 EXPECT_EQ("'oauth2' is only allowed for extensions, legacy packaged apps, " 150 EXPECT_EQ("'oauth2' is only allowed for extensions, legacy packaged apps, "
151 "and packaged apps, but this is a hosted app.", 151 "and packaged apps, but this is a hosted app.",
152 warning.message); 152 warning.message);
153 EXPECT_EQ("", OAuth2Info::GetOAuth2Info(extension.get()).client_id); 153 EXPECT_EQ("", OAuth2Info::GetOAuth2Info(extension.get()).client_id);
154 EXPECT_TRUE(OAuth2Info::GetOAuth2Info(extension.get()).scopes.empty()); 154 EXPECT_TRUE(OAuth2Info::GetOAuth2Info(extension.get()).scopes.empty());
155 EXPECT_FALSE(OAuth2Info::GetOAuth2Info(extension.get()).auto_approve); 155 EXPECT_FALSE(OAuth2Info::GetOAuth2Info(extension.get()).auto_approve);
156 } 156 }
157 } 157 }
158 158
159 TEST_F(OAuth2ManifestTest, AutoApproveNotSetExtensionNotOnWhitelist) { 159 TEST_F(OAuth2ManifestTest, AutoApproveNotSetExtensionNotOnWhitelist) {
160 base::DictionaryValue* ext_manifest = 160 base::DictionaryValue* ext_manifest =
161 CreateManifest(AUTO_APPROVE_NOT_SET, false, CLIENT_ID_DEFAULT); 161 CreateManifest(AUTO_APPROVE_NOT_SET, false, CLIENT_ID_DEFAULT);
162 ManifestData manifest(ext_manifest, "test"); 162 Manifest manifest(ext_manifest, "test");
163 scoped_refptr<extensions::Extension> extension = 163 scoped_refptr<extensions::Extension> extension =
164 LoadAndExpectSuccess(manifest); 164 LoadAndExpectSuccess(manifest);
165 EXPECT_TRUE(extension->install_warnings().empty()); 165 EXPECT_TRUE(extension->install_warnings().empty());
166 EXPECT_FALSE(OAuth2Info::GetOAuth2Info(extension.get()).auto_approve); 166 EXPECT_FALSE(OAuth2Info::GetOAuth2Info(extension.get()).auto_approve);
167 } 167 }
168 168
169 TEST_F(OAuth2ManifestTest, AutoApproveFalseExtensionNotOnWhitelist) { 169 TEST_F(OAuth2ManifestTest, AutoApproveFalseExtensionNotOnWhitelist) {
170 base::DictionaryValue* ext_manifest = 170 base::DictionaryValue* ext_manifest =
171 CreateManifest(AUTO_APPROVE_FALSE, false, CLIENT_ID_DEFAULT); 171 CreateManifest(AUTO_APPROVE_FALSE, false, CLIENT_ID_DEFAULT);
172 ManifestData manifest(ext_manifest, "test"); 172 Manifest manifest(ext_manifest, "test");
173 scoped_refptr<extensions::Extension> extension = 173 scoped_refptr<extensions::Extension> extension =
174 LoadAndExpectSuccess(manifest); 174 LoadAndExpectSuccess(manifest);
175 EXPECT_EQ(1U, extension->install_warnings().size()); 175 EXPECT_EQ(1U, extension->install_warnings().size());
176 const extensions::InstallWarning& warning = 176 const extensions::InstallWarning& warning =
177 extension->install_warnings()[0]; 177 extension->install_warnings()[0];
178 EXPECT_EQ(kAutoApproveNotAllowedWarning, warning.message); 178 EXPECT_EQ(kAutoApproveNotAllowedWarning, warning.message);
179 EXPECT_FALSE(OAuth2Info::GetOAuth2Info(extension.get()).auto_approve); 179 EXPECT_FALSE(OAuth2Info::GetOAuth2Info(extension.get()).auto_approve);
180 } 180 }
181 181
182 TEST_F(OAuth2ManifestTest, AutoApproveTrueExtensionNotOnWhitelist) { 182 TEST_F(OAuth2ManifestTest, AutoApproveTrueExtensionNotOnWhitelist) {
183 base::DictionaryValue* ext_manifest = 183 base::DictionaryValue* ext_manifest =
184 CreateManifest(AUTO_APPROVE_TRUE, false, CLIENT_ID_DEFAULT); 184 CreateManifest(AUTO_APPROVE_TRUE, false, CLIENT_ID_DEFAULT);
185 ManifestData manifest(ext_manifest, "test"); 185 Manifest manifest(ext_manifest, "test");
186 scoped_refptr<extensions::Extension> extension = 186 scoped_refptr<extensions::Extension> extension =
187 LoadAndExpectSuccess(manifest); 187 LoadAndExpectSuccess(manifest);
188 EXPECT_EQ(1U, extension->install_warnings().size()); 188 EXPECT_EQ(1U, extension->install_warnings().size());
189 const extensions::InstallWarning& warning = 189 const extensions::InstallWarning& warning =
190 extension->install_warnings()[0]; 190 extension->install_warnings()[0];
191 EXPECT_EQ(kAutoApproveNotAllowedWarning, warning.message); 191 EXPECT_EQ(kAutoApproveNotAllowedWarning, warning.message);
192 EXPECT_FALSE(OAuth2Info::GetOAuth2Info(extension.get()).auto_approve); 192 EXPECT_FALSE(OAuth2Info::GetOAuth2Info(extension.get()).auto_approve);
193 } 193 }
194 194
195 TEST_F(OAuth2ManifestTest, AutoApproveInvalidExtensionNotOnWhitelist) { 195 TEST_F(OAuth2ManifestTest, AutoApproveInvalidExtensionNotOnWhitelist) {
196 base::DictionaryValue* ext_manifest = 196 base::DictionaryValue* ext_manifest =
197 CreateManifest(AUTO_APPROVE_INVALID, false, CLIENT_ID_DEFAULT); 197 CreateManifest(AUTO_APPROVE_INVALID, false, CLIENT_ID_DEFAULT);
198 ManifestData manifest(ext_manifest, "test"); 198 Manifest manifest(ext_manifest, "test");
199 scoped_refptr<extensions::Extension> extension = 199 scoped_refptr<extensions::Extension> extension =
200 LoadAndExpectSuccess(manifest); 200 LoadAndExpectSuccess(manifest);
201 EXPECT_EQ(1U, extension->install_warnings().size()); 201 EXPECT_EQ(1U, extension->install_warnings().size());
202 const extensions::InstallWarning& warning = 202 const extensions::InstallWarning& warning =
203 extension->install_warnings()[0]; 203 extension->install_warnings()[0];
204 EXPECT_EQ(kAutoApproveNotAllowedWarning, warning.message); 204 EXPECT_EQ(kAutoApproveNotAllowedWarning, warning.message);
205 EXPECT_FALSE(OAuth2Info::GetOAuth2Info(extension.get()).auto_approve); 205 EXPECT_FALSE(OAuth2Info::GetOAuth2Info(extension.get()).auto_approve);
206 } 206 }
207 207
208 TEST_F(OAuth2ManifestTest, AutoApproveNotSetExtensionOnWhitelist) { 208 TEST_F(OAuth2ManifestTest, AutoApproveNotSetExtensionOnWhitelist) {
209 base::DictionaryValue* ext_manifest = 209 base::DictionaryValue* ext_manifest =
210 CreateManifest(AUTO_APPROVE_NOT_SET, true, CLIENT_ID_DEFAULT); 210 CreateManifest(AUTO_APPROVE_NOT_SET, true, CLIENT_ID_DEFAULT);
211 ManifestData manifest(ext_manifest, "test"); 211 Manifest manifest(ext_manifest, "test");
212 scoped_refptr<extensions::Extension> extension = 212 scoped_refptr<extensions::Extension> extension =
213 LoadAndExpectSuccess(manifest); 213 LoadAndExpectSuccess(manifest);
214 EXPECT_TRUE(extension->install_warnings().empty()); 214 EXPECT_TRUE(extension->install_warnings().empty());
215 EXPECT_FALSE(OAuth2Info::GetOAuth2Info(extension.get()).auto_approve); 215 EXPECT_FALSE(OAuth2Info::GetOAuth2Info(extension.get()).auto_approve);
216 } 216 }
217 217
218 TEST_F(OAuth2ManifestTest, AutoApproveFalseExtensionOnWhitelist) { 218 TEST_F(OAuth2ManifestTest, AutoApproveFalseExtensionOnWhitelist) {
219 base::DictionaryValue* ext_manifest = 219 base::DictionaryValue* ext_manifest =
220 CreateManifest(AUTO_APPROVE_FALSE, true, CLIENT_ID_DEFAULT); 220 CreateManifest(AUTO_APPROVE_FALSE, true, CLIENT_ID_DEFAULT);
221 ManifestData manifest(ext_manifest, "test"); 221 Manifest manifest(ext_manifest, "test");
222 scoped_refptr<extensions::Extension> extension = 222 scoped_refptr<extensions::Extension> extension =
223 LoadAndExpectSuccess(manifest); 223 LoadAndExpectSuccess(manifest);
224 EXPECT_TRUE(extension->install_warnings().empty()); 224 EXPECT_TRUE(extension->install_warnings().empty());
225 EXPECT_FALSE(OAuth2Info::GetOAuth2Info(extension.get()).auto_approve); 225 EXPECT_FALSE(OAuth2Info::GetOAuth2Info(extension.get()).auto_approve);
226 } 226 }
227 227
228 TEST_F(OAuth2ManifestTest, AutoApproveTrueExtensionOnWhitelist) { 228 TEST_F(OAuth2ManifestTest, AutoApproveTrueExtensionOnWhitelist) {
229 base::DictionaryValue* ext_manifest = 229 base::DictionaryValue* ext_manifest =
230 CreateManifest(AUTO_APPROVE_TRUE, true, CLIENT_ID_DEFAULT); 230 CreateManifest(AUTO_APPROVE_TRUE, true, CLIENT_ID_DEFAULT);
231 ManifestData manifest(ext_manifest, "test"); 231 Manifest manifest(ext_manifest, "test");
232 scoped_refptr<extensions::Extension> extension = 232 scoped_refptr<extensions::Extension> extension =
233 LoadAndExpectSuccess(manifest); 233 LoadAndExpectSuccess(manifest);
234 EXPECT_TRUE(extension->install_warnings().empty()); 234 EXPECT_TRUE(extension->install_warnings().empty());
235 EXPECT_TRUE(OAuth2Info::GetOAuth2Info(extension.get()).auto_approve); 235 EXPECT_TRUE(OAuth2Info::GetOAuth2Info(extension.get()).auto_approve);
236 } 236 }
237 237
238 TEST_F(OAuth2ManifestTest, AutoApproveInvalidExtensionOnWhitelist) { 238 TEST_F(OAuth2ManifestTest, AutoApproveInvalidExtensionOnWhitelist) {
239 base::DictionaryValue* ext_manifest = 239 base::DictionaryValue* ext_manifest =
240 CreateManifest(AUTO_APPROVE_INVALID, true, CLIENT_ID_DEFAULT); 240 CreateManifest(AUTO_APPROVE_INVALID, true, CLIENT_ID_DEFAULT);
241 ManifestData manifest(ext_manifest, "test"); 241 Manifest manifest(ext_manifest, "test");
242 std::string error; 242 std::string error;
243 scoped_refptr<extensions::Extension> extension = 243 scoped_refptr<extensions::Extension> extension =
244 LoadExtension(manifest, &error); 244 LoadExtension(manifest, &error);
245 EXPECT_EQ( 245 EXPECT_EQ(
246 "Invalid value for 'oauth2.auto_approve'. Value must be true or false.", 246 "Invalid value for 'oauth2.auto_approve'. Value must be true or false.",
247 error); 247 error);
248 } 248 }
249 249
250 TEST_F(OAuth2ManifestTest, InvalidClientId) { 250 TEST_F(OAuth2ManifestTest, InvalidClientId) {
251 { 251 {
252 base::DictionaryValue* ext_manifest = 252 base::DictionaryValue* ext_manifest =
253 CreateManifest(AUTO_APPROVE_NOT_SET, false, CLIENT_ID_NOT_SET); 253 CreateManifest(AUTO_APPROVE_NOT_SET, false, CLIENT_ID_NOT_SET);
254 ManifestData manifest(ext_manifest, "test"); 254 Manifest manifest(ext_manifest, "test");
255 std::string error; 255 std::string error;
256 LoadAndExpectError(manifest, errors::kInvalidOAuth2ClientId); 256 LoadAndExpectError(manifest, errors::kInvalidOAuth2ClientId);
257 } 257 }
258 258
259 { 259 {
260 base::DictionaryValue* ext_manifest = 260 base::DictionaryValue* ext_manifest =
261 CreateManifest(AUTO_APPROVE_NOT_SET, false, CLIENT_ID_EMPTY); 261 CreateManifest(AUTO_APPROVE_NOT_SET, false, CLIENT_ID_EMPTY);
262 ManifestData manifest(ext_manifest, "test"); 262 Manifest manifest(ext_manifest, "test");
263 std::string error; 263 std::string error;
264 LoadAndExpectError(manifest, errors::kInvalidOAuth2ClientId); 264 LoadAndExpectError(manifest, errors::kInvalidOAuth2ClientId);
265 } 265 }
266 } 266 }
267 267
268 TEST_F(OAuth2ManifestTest, ComponentInvalidClientId) { 268 TEST_F(OAuth2ManifestTest, ComponentInvalidClientId) {
269 // Component Apps without auto_approve must include a client ID. 269 // Component Apps without auto_approve must include a client ID.
270 { 270 {
271 base::DictionaryValue* ext_manifest = 271 base::DictionaryValue* ext_manifest =
272 CreateManifest(AUTO_APPROVE_NOT_SET, false, CLIENT_ID_NOT_SET); 272 CreateManifest(AUTO_APPROVE_NOT_SET, false, CLIENT_ID_NOT_SET);
273 ManifestData manifest(ext_manifest, "test"); 273 Manifest manifest(ext_manifest, "test");
274 std::string error; 274 std::string error;
275 LoadAndExpectError(manifest, 275 LoadAndExpectError(manifest,
276 errors::kInvalidOAuth2ClientId, 276 errors::kInvalidOAuth2ClientId,
277 extensions::Manifest::COMPONENT); 277 extensions::Manifest::COMPONENT);
278 } 278 }
279 279
280 { 280 {
281 base::DictionaryValue* ext_manifest = 281 base::DictionaryValue* ext_manifest =
282 CreateManifest(AUTO_APPROVE_NOT_SET, false, CLIENT_ID_EMPTY); 282 CreateManifest(AUTO_APPROVE_NOT_SET, false, CLIENT_ID_EMPTY);
283 ManifestData manifest(ext_manifest, "test"); 283 Manifest manifest(ext_manifest, "test");
284 std::string error; 284 std::string error;
285 LoadAndExpectError(manifest, 285 LoadAndExpectError(manifest,
286 errors::kInvalidOAuth2ClientId, 286 errors::kInvalidOAuth2ClientId,
287 extensions::Manifest::COMPONENT); 287 extensions::Manifest::COMPONENT);
288 } 288 }
289 } 289 }
290 290
291 TEST_F(OAuth2ManifestTest, ComponentWithChromeClientId) { 291 TEST_F(OAuth2ManifestTest, ComponentWithChromeClientId) {
292 { 292 {
293 base::DictionaryValue* ext_manifest = 293 base::DictionaryValue* ext_manifest =
294 CreateManifest(AUTO_APPROVE_TRUE, true, CLIENT_ID_NOT_SET); 294 CreateManifest(AUTO_APPROVE_TRUE, true, CLIENT_ID_NOT_SET);
295 ManifestData manifest(ext_manifest, "test"); 295 Manifest manifest(ext_manifest, "test");
296 scoped_refptr<extensions::Extension> extension = 296 scoped_refptr<extensions::Extension> extension =
297 LoadAndExpectSuccess(manifest, extensions::Manifest::COMPONENT); 297 LoadAndExpectSuccess(manifest, extensions::Manifest::COMPONENT);
298 EXPECT_TRUE(OAuth2Info::GetOAuth2Info(extension.get()).client_id.empty()); 298 EXPECT_TRUE(OAuth2Info::GetOAuth2Info(extension.get()).client_id.empty());
299 299
300 } 300 }
301 301
302 { 302 {
303 base::DictionaryValue* ext_manifest = 303 base::DictionaryValue* ext_manifest =
304 CreateManifest(AUTO_APPROVE_TRUE, true, CLIENT_ID_EMPTY); 304 CreateManifest(AUTO_APPROVE_TRUE, true, CLIENT_ID_EMPTY);
305 ManifestData manifest(ext_manifest, "test"); 305 Manifest manifest(ext_manifest, "test");
306 scoped_refptr<extensions::Extension> extension = 306 scoped_refptr<extensions::Extension> extension =
307 LoadAndExpectSuccess(manifest, extensions::Manifest::COMPONENT); 307 LoadAndExpectSuccess(manifest, extensions::Manifest::COMPONENT);
308 EXPECT_TRUE(OAuth2Info::GetOAuth2Info(extension.get()).client_id.empty()); 308 EXPECT_TRUE(OAuth2Info::GetOAuth2Info(extension.get()).client_id.empty());
309 309
310 } 310 }
311 } 311 }
312 312
313 TEST_F(OAuth2ManifestTest, ComponentWithStandardClientId) { 313 TEST_F(OAuth2ManifestTest, ComponentWithStandardClientId) {
314 base::DictionaryValue* ext_manifest = 314 base::DictionaryValue* ext_manifest =
315 CreateManifest(AUTO_APPROVE_TRUE, true, CLIENT_ID_DEFAULT); 315 CreateManifest(AUTO_APPROVE_TRUE, true, CLIENT_ID_DEFAULT);
316 ManifestData manifest(ext_manifest, "test"); 316 Manifest manifest(ext_manifest, "test");
317 scoped_refptr<extensions::Extension> extension = 317 scoped_refptr<extensions::Extension> extension =
318 LoadAndExpectSuccess(manifest, extensions::Manifest::COMPONENT); 318 LoadAndExpectSuccess(manifest, extensions::Manifest::COMPONENT);
319 EXPECT_EQ("client1", OAuth2Info::GetOAuth2Info(extension.get()).client_id); 319 EXPECT_EQ("client1", OAuth2Info::GetOAuth2Info(extension.get()).client_id);
320 } 320 }
321 321
322 } // namespace extensions 322 } // namespace extensions
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698