OLD | NEW |
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 Loading... |
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 Loading... |
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 Loading... |
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 } |
OLD | NEW |