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

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

Issue 9969087: Switch platform apps from a declarative launch container to handling an onLaunched event. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Mike's review feedback Created 8 years, 8 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) 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 "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 279 matching lines...) Expand 10 before | Expand all | Expand 10 after
290 } 290 }
291 291
292 TEST_F(ExtensionManifestTest, PlatformApps) { 292 TEST_F(ExtensionManifestTest, PlatformApps) {
293 // A minimal platform app. 293 // A minimal platform app.
294 LoadAndExpectError("init_valid_platform_app.json", 294 LoadAndExpectError("init_valid_platform_app.json",
295 errors::kPlatformAppFlagRequired); 295 errors::kPlatformAppFlagRequired);
296 296
297 CommandLine::ForCurrentProcess()->AppendSwitch(switches::kEnablePlatformApps); 297 CommandLine::ForCurrentProcess()->AppendSwitch(switches::kEnablePlatformApps);
298 298
299 LoadAndExpectSuccess("init_valid_platform_app.json"); 299 LoadAndExpectSuccess("init_valid_platform_app.json");
300
301 LoadAndExpectError(
302 "init_invalid_platform_app_1.json",
303 extension_manifest_errors::kLaunchNotAllowedForPlatformApps);
304 LoadAndExpectError(
305 "init_invalid_platform_app_2.json",
306 extension_manifest_errors::kBackgroundRequiredForPlatformApps);
300 } 307 }
301 308
302 TEST_F(ExtensionManifestTest, CertainApisRequirePlatformApps) { 309 TEST_F(ExtensionManifestTest, CertainApisRequirePlatformApps) {
303 // Put APIs here that should be restricted to platform apps, but that haven't 310 // Put APIs here that should be restricted to platform apps, but that haven't
304 // yet graduated from experimental. 311 // yet graduated from experimental.
305 const char* kPlatformAppExperimentalApis[] = { 312 const char* kPlatformAppExperimentalApis[] = {
306 "dns", 313 "dns",
307 "serial", 314 "serial",
308 "socket", 315 "socket",
309 }; 316 };
(...skipping 210 matching lines...) Expand 10 before | Expand all | Expand 10 after
520 errors::kInvalidLaunchValue, 527 errors::kInvalidLaunchValue,
521 keys::kLaunchWidth)); 528 keys::kLaunchWidth));
522 LoadAndExpectError("launch_height_invalid.json", 529 LoadAndExpectError("launch_height_invalid.json",
523 ExtensionErrorUtils::FormatErrorMessage( 530 ExtensionErrorUtils::FormatErrorMessage(
524 errors::kInvalidLaunchValueContainer, 531 errors::kInvalidLaunchValueContainer,
525 keys::kLaunchHeight)); 532 keys::kLaunchHeight));
526 LoadAndExpectError("launch_height_negative.json", 533 LoadAndExpectError("launch_height_negative.json",
527 ExtensionErrorUtils::FormatErrorMessage( 534 ExtensionErrorUtils::FormatErrorMessage(
528 errors::kInvalidLaunchValue, 535 errors::kInvalidLaunchValue,
529 keys::kLaunchHeight)); 536 keys::kLaunchHeight));
530
531 LoadAndExpectError("launch_min_width_invalid.json",
532 ExtensionErrorUtils::FormatErrorMessage(
533 errors::kInvalidLaunchValueContainer,
534 keys::kLaunchMinWidth));
535 LoadAndExpectError("launch_min_width_negative.json",
536 ExtensionErrorUtils::FormatErrorMessage(
537 errors::kInvalidLaunchValue,
538 keys::kLaunchMinWidth));
539 LoadAndExpectError("launch_min_height_invalid.json",
540 ExtensionErrorUtils::FormatErrorMessage(
541 errors::kInvalidLaunchValueContainer,
542 keys::kLaunchMinHeight));
543 LoadAndExpectError("launch_min_height_negative.json",
544 ExtensionErrorUtils::FormatErrorMessage(
545 errors::kInvalidLaunchValue,
546 keys::kLaunchMinHeight));
547
548 LoadAndExpectError("launch_container_missing_size_for_platform.json",
549 ExtensionErrorUtils::FormatErrorMessage(
550 errors::kInvalidLaunchValue,
551 keys::kLaunchWidth));
552 LoadAndExpectError("launch_container_invalid_size_constraints.json",
553 ExtensionErrorUtils::FormatErrorMessage(
554 errors::kInvalidLaunchValue,
555 keys::kLaunchMaxWidth));
556 }
557
558 TEST_F(ExtensionManifestTest, PlatformAppLaunchContainer) {
559 CommandLine::ForCurrentProcess()->AppendSwitch(switches::kEnablePlatformApps);
560
561 LoadAndExpectError("launch_container_invalid_type_for_platform.json",
562 errors::kInvalidLaunchContainerForPlatform);
563 } 537 }
564 538
565 TEST_F(ExtensionManifestTest, AppLaunchURL) { 539 TEST_F(ExtensionManifestTest, AppLaunchURL) {
566 LoadAndExpectError("launch_path_and_url.json", 540 LoadAndExpectError("launch_path_and_url.json",
567 errors::kLaunchPathAndURLAreExclusive); 541 errors::kLaunchPathAndURLAreExclusive);
568 LoadAndExpectError("launch_path_and_extent.json", 542 LoadAndExpectError("launch_path_and_extent.json",
569 errors::kLaunchPathAndExtentAreExclusive); 543 errors::kLaunchPathAndExtentAreExclusive);
570 LoadAndExpectError("launch_path_invalid_type.json", 544 LoadAndExpectError("launch_path_invalid_type.json",
571 ExtensionErrorUtils::FormatErrorMessage( 545 ExtensionErrorUtils::FormatErrorMessage(
572 errors::kInvalidLaunchValue, 546 errors::kInvalidLaunchValue,
(...skipping 697 matching lines...) Expand 10 before | Expand all | Expand 10 after
1270 // Extension with manifest version 2 *can* use storage API. 1244 // Extension with manifest version 2 *can* use storage API.
1271 { 1245 {
1272 DictionaryValue manifest_with_version; 1246 DictionaryValue manifest_with_version;
1273 manifest_with_version.SetInteger(keys::kManifestVersion, 2); 1247 manifest_with_version.SetInteger(keys::kManifestVersion, 2);
1274 manifest_with_version.MergeDictionary(&base_manifest); 1248 manifest_with_version.MergeDictionary(&base_manifest);
1275 1249
1276 Manifest manifest(&manifest_with_version, "test"); 1250 Manifest manifest(&manifest_with_version, "test");
1277 LoadAndExpectSuccess(manifest); 1251 LoadAndExpectSuccess(manifest);
1278 } 1252 }
1279 } 1253 }
OLDNEW
« no previous file with comments | « chrome/common/extensions/extension_manifest_constants.cc ('k') | chrome/test/data/extensions/api_test/dns/api/main.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698