| 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 17 matching lines...) Expand all Loading... |
| 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 Loading... |
| 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 } |
| OLD | NEW |