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

Side by Side Diff: chrome/common/extensions/extension_manifests_unittest.cc

Issue 8227021: Merge 104582 - Add support for an optional "requirements" section in extension/app manifests. (Closed) Base URL: svn://svn.chromium.org/chrome/branches/874/src/
Patch Set: Created 9 years, 2 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) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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/common/extensions/extension.h" 5 #include "chrome/common/extensions/extension.h"
6 6
7 #if defined(TOOLKIT_GTK) 7 #if defined(TOOLKIT_GTK)
8 #include <gtk/gtk.h> 8 #include <gtk/gtk.h>
9 #endif 9 #endif
10 10
(...skipping 189 matching lines...) Expand 10 before | Expand all | Expand 10 after
200 {"init_invalid_files_css_item_invalid.json", errors::kInvalidCss}, 200 {"init_invalid_files_css_item_invalid.json", errors::kInvalidCss},
201 {"init_invalid_permissions_invalid.json", errors::kInvalidPermissions}, 201 {"init_invalid_permissions_invalid.json", errors::kInvalidPermissions},
202 {"init_invalid_permissions_item_invalid.json", errors::kInvalidPermission}, 202 {"init_invalid_permissions_item_invalid.json", errors::kInvalidPermission},
203 {"init_invalid_page_actions_multi.json", 203 {"init_invalid_page_actions_multi.json",
204 errors::kInvalidPageActionsListSize}, 204 errors::kInvalidPageActionsListSize},
205 {"init_invalid_options_url_invalid.json", errors::kInvalidOptionsPage}, 205 {"init_invalid_options_url_invalid.json", errors::kInvalidOptionsPage},
206 {"init_invalid_locale_invalid.json", errors::kInvalidDefaultLocale}, 206 {"init_invalid_locale_invalid.json", errors::kInvalidDefaultLocale},
207 {"init_invalid_locale_empty.json", errors::kInvalidDefaultLocale}, 207 {"init_invalid_locale_empty.json", errors::kInvalidDefaultLocale},
208 {"init_invalid_min_chrome_invalid.json", 208 {"init_invalid_min_chrome_invalid.json",
209 errors::kInvalidMinimumChromeVersion}, 209 errors::kInvalidMinimumChromeVersion},
210 {"init_invalid_chrome_version_too_low.json", errors::kChromeVersionTooLow} 210 {"init_invalid_chrome_version_too_low.json", errors::kChromeVersionTooLow},
211 {"init_invalid_requirements_1.json", errors::kInvalidRequirements},
212 {"init_invalid_requirements_2.json", errors::kInvalidRequirement}
211 }; 213 };
212 214
213 RunTestcases(testcases, arraysize(testcases)); 215 RunTestcases(testcases, arraysize(testcases));
214 } 216 }
215 217
216 TEST_F(ExtensionManifestTest, InitFromValueValid) { 218 TEST_F(ExtensionManifestTest, InitFromValueValid) {
217 scoped_refptr<Extension> extension(LoadAndExpectSuccess( 219 scoped_refptr<Extension> extension(LoadAndExpectSuccess(
218 "init_valid_minimal.json")); 220 "init_valid_minimal.json"));
219 221
220 FilePath path; 222 FilePath path;
(...skipping 17 matching lines...) Expand all
238 EXPECT_EQ("chrome-extension", extension->options_url().scheme()); 240 EXPECT_EQ("chrome-extension", extension->options_url().scheme());
239 EXPECT_EQ("/options.html", extension->options_url().path()); 241 EXPECT_EQ("/options.html", extension->options_url().path());
240 242
241 // Test that an empty list of page actions does not stop a browser action 243 // Test that an empty list of page actions does not stop a browser action
242 // from being loaded. 244 // from being loaded.
243 extension = LoadAndExpectSuccess("init_valid_empty_page_actions.json"); 245 extension = LoadAndExpectSuccess("init_valid_empty_page_actions.json");
244 246
245 // Test with a minimum_chrome_version. 247 // Test with a minimum_chrome_version.
246 extension = LoadAndExpectSuccess("init_valid_minimum_chrome.json"); 248 extension = LoadAndExpectSuccess("init_valid_minimum_chrome.json");
247 249
250 // Test a hosted app with a requirements section.
251 extension = LoadAndExpectSuccess("init_valid_app_requirements.json");
252
248 // Verify empty permission settings are considered valid. 253 // Verify empty permission settings are considered valid.
249 LoadAndExpectSuccess("init_valid_permissions_empty.json"); 254 LoadAndExpectSuccess("init_valid_permissions_empty.json");
250 255
251 // We allow unknown API permissions, so this will be valid until we better 256 // We allow unknown API permissions, so this will be valid until we better
252 // distinguish between API and host permissions. 257 // distinguish between API and host permissions.
253 LoadAndExpectSuccess("init_valid_permissions_unknown.json"); 258 LoadAndExpectSuccess("init_valid_permissions_unknown.json");
254 } 259 }
255 260
256 TEST_F(ExtensionManifestTest, InitFromValueValidNameInRTL) { 261 TEST_F(ExtensionManifestTest, InitFromValueValidNameInRTL) {
257 #if defined(TOOLKIT_GTK) 262 #if defined(TOOLKIT_GTK)
(...skipping 581 matching lines...) Expand 10 before | Expand all | Expand 10 after
839 scoped_refptr<Extension> extension_2( 844 scoped_refptr<Extension> extension_2(
840 LoadAndExpectSuccess("offline_disabled_packaged_app.json")); 845 LoadAndExpectSuccess("offline_disabled_packaged_app.json"));
841 EXPECT_FALSE(extension_2->offline_enabled()); 846 EXPECT_FALSE(extension_2->offline_enabled());
842 scoped_refptr<Extension> extension_3( 847 scoped_refptr<Extension> extension_3(
843 LoadAndExpectSuccess("offline_default_packaged_app.json")); 848 LoadAndExpectSuccess("offline_default_packaged_app.json"));
844 EXPECT_FALSE(extension_3->offline_enabled()); 849 EXPECT_FALSE(extension_3->offline_enabled());
845 scoped_refptr<Extension> extension_4( 850 scoped_refptr<Extension> extension_4(
846 LoadAndExpectSuccess("offline_enabled_hosted_app.json")); 851 LoadAndExpectSuccess("offline_enabled_hosted_app.json"));
847 EXPECT_TRUE(extension_4->offline_enabled()); 852 EXPECT_TRUE(extension_4->offline_enabled());
848 } 853 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698