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

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

Issue 8200015: Add support for an optional "requirements" section in extension/app manifests. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/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 20 matching lines...) Expand all
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
248 // Test a hosted app with a minimum_chrome_version. 250 // Test a hosted app with a minimum_chrome_version.
249 extension = LoadAndExpectSuccess("init_valid_app_minimum_chrome.json"); 251 extension = LoadAndExpectSuccess("init_valid_app_minimum_chrome.json");
250 252
253 // Test a hosted app with a requirements section.
254 extension = LoadAndExpectSuccess("init_valid_app_requirements.json");
255
251 // Verify empty permission settings are considered valid. 256 // Verify empty permission settings are considered valid.
252 LoadAndExpectSuccess("init_valid_permissions_empty.json"); 257 LoadAndExpectSuccess("init_valid_permissions_empty.json");
253 258
254 // We allow unknown API permissions, so this will be valid until we better 259 // We allow unknown API permissions, so this will be valid until we better
255 // distinguish between API and host permissions. 260 // distinguish between API and host permissions.
256 LoadAndExpectSuccess("init_valid_permissions_unknown.json"); 261 LoadAndExpectSuccess("init_valid_permissions_unknown.json");
257 } 262 }
258 263
259 TEST_F(ExtensionManifestTest, InitFromValueValidNameInRTL) { 264 TEST_F(ExtensionManifestTest, InitFromValueValidNameInRTL) {
260 #if defined(TOOLKIT_GTK) 265 #if defined(TOOLKIT_GTK)
(...skipping 626 matching lines...) Expand 10 before | Expand all | Expand 10 after
887 scoped_refptr<Extension> extension_2( 892 scoped_refptr<Extension> extension_2(
888 LoadAndExpectSuccess("offline_disabled_packaged_app.json")); 893 LoadAndExpectSuccess("offline_disabled_packaged_app.json"));
889 EXPECT_FALSE(extension_2->offline_enabled()); 894 EXPECT_FALSE(extension_2->offline_enabled());
890 scoped_refptr<Extension> extension_3( 895 scoped_refptr<Extension> extension_3(
891 LoadAndExpectSuccess("offline_default_packaged_app.json")); 896 LoadAndExpectSuccess("offline_default_packaged_app.json"));
892 EXPECT_FALSE(extension_3->offline_enabled()); 897 EXPECT_FALSE(extension_3->offline_enabled());
893 scoped_refptr<Extension> extension_4( 898 scoped_refptr<Extension> extension_4(
894 LoadAndExpectSuccess("offline_enabled_hosted_app.json")); 899 LoadAndExpectSuccess("offline_enabled_hosted_app.json"));
895 EXPECT_TRUE(extension_4->offline_enabled()); 900 EXPECT_TRUE(extension_4->offline_enabled());
896 } 901 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698