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

Side by Side Diff: chrome/common/extensions/manifest_tests/extension_manifests_requirements_unittest.cc

Issue 12494028: Move Requirements out of Extension Class (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Created 7 years, 9 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
OLDNEW
(Empty)
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
3 // found in the LICENSE file.
4
5 #include "chrome/common/extensions/manifest_tests/extension_manifest_test.h"
6
7 #include "chrome/common/extensions/extension_manifest_constants.h"
8 #include "extensions/common/error_utils.h"
9 #include "testing/gtest/include/gtest/gtest.h"
10
11 namespace errors = extension_manifest_errors;
12
13 using extensions::ErrorUtils;
14
15 TEST_F(ExtensionManifestTest, RequirementsInvalid) {
16 Testcase testcases[] = {
17 Testcase("requirements_invalid_requirements.json",
18 errors::kInvalidRequirements),
19 Testcase("requirements_invalid_keys.json", errors::kInvalidRequirements),
20 Testcase("requirements_invalid_3d.json",
21 ErrorUtils::FormatErrorMessage(
22 errors::kInvalidRequirement, "3D")),
23 Testcase("requirements_invalid_3d_features.json",
24 ErrorUtils::FormatErrorMessage(
25 errors::kInvalidRequirement, "3D")),
26 Testcase("requirements_invalid_3d_features_value.json",
27 ErrorUtils::FormatErrorMessage(
28 errors::kInvalidRequirement, "3D")),
29 Testcase("requirements_invalid_3d_no_features.json",
30 ErrorUtils::FormatErrorMessage(
31 errors::kInvalidRequirement, "3D")),
32 Testcase("requirements_invalid_plugins.json",
33 ErrorUtils::FormatErrorMessage(
34 errors::kInvalidRequirement, "plugins")),
35 Testcase("requirements_invalid_plugins_key.json",
36 ErrorUtils::FormatErrorMessage(
37 errors::kInvalidRequirement, "plugins")),
38 Testcase("requirements_invalid_plugins_value.json",
39 ErrorUtils::FormatErrorMessage(
40 errors::kInvalidRequirement, "plugins"))
41 };
42
43 RunTestcases(testcases, arraysize(testcases), EXPECT_TYPE_ERROR);
44 }
45
46 TEST_F(ExtensionManifestTest, RequirementsValid) {
47 // Test the defaults.
48 scoped_refptr<extensions::Extension> extension(LoadAndExpectSuccess(
49 "requirements_valid_empty.json"));
50 ASSERT_TRUE(extension.get());
51 EXPECT_EQ(extension->requirements().webgl, false);
52 EXPECT_EQ(extension->requirements().css3d, false);
53 EXPECT_EQ(extension->requirements().npapi, false);
54
55 // Test loading all the requirements.
56 extension = LoadAndExpectSuccess("requirements_valid_full.json");
57 ASSERT_TRUE(extension.get());
58 EXPECT_EQ(extension->requirements().webgl, true);
59 EXPECT_EQ(extension->requirements().css3d, true);
60 EXPECT_EQ(extension->requirements().npapi, true);
61 }
62
63 // When an npapi plugin is present, the default of the "npapi" requirement
64 // changes.
65 TEST_F(ExtensionManifestTest, RequirementsNpapiDefault) {
66 scoped_refptr<extensions::Extension> extension(LoadAndExpectSuccess(
67 "requirements_npapi_empty.json"));
68 ASSERT_TRUE(extension.get());
69 EXPECT_EQ(extension->requirements().webgl, false);
70 EXPECT_EQ(extension->requirements().css3d, false);
71 EXPECT_EQ(extension->requirements().npapi, true);
72
73 extension = LoadAndExpectSuccess(
74 "requirements_npapi_empty_plugins_empty.json");
75 ASSERT_TRUE(extension.get());
76 EXPECT_EQ(extension->requirements().webgl, false);
77 EXPECT_EQ(extension->requirements().css3d, false);
78 EXPECT_EQ(extension->requirements().npapi, false);
79
80 extension = LoadAndExpectSuccess("requirements_npapi.json");
81 ASSERT_TRUE(extension.get());
82 EXPECT_EQ(extension->requirements().webgl, false);
83 EXPECT_EQ(extension->requirements().css3d, false);
84 EXPECT_EQ(extension->requirements().npapi, false);
85
86 extension = LoadAndExpectSuccess("requirements_npapi_plugins_empty.json");
87 ASSERT_TRUE(extension.get());
88 EXPECT_EQ(extension->requirements().webgl, false);
89 EXPECT_EQ(extension->requirements().css3d, false);
90 EXPECT_EQ(extension->requirements().npapi, true);
91 }
OLDNEW
« chrome/browser/extensions/extension_browsertest.cc ('K') | « chrome/common/extensions/extension.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698