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

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: Move Requirements from API Created 7 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
« no previous file with comments | « chrome/common/extensions/manifest_handlers/requirements_handler.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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/api/plugins/plugins_handler.h"
6 #include "chrome/common/extensions/extension_manifest_constants.h"
7 #include "chrome/common/extensions/manifest_handlers/requirements_handler.h"
5 #include "chrome/common/extensions/manifest_tests/extension_manifest_test.h" 8 #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 "extensions/common/error_utils.h"
9 #include "testing/gtest/include/gtest/gtest.h" 10 #include "testing/gtest/include/gtest/gtest.h"
10 11
11 namespace errors = extension_manifest_errors; 12 namespace errors = extension_manifest_errors;
12 13
13 using extensions::ErrorUtils; 14 namespace extensions {
14 15
15 TEST_F(ExtensionManifestTest, RequirementsInvalid) { 16 class RequirementsManifestTest : public ExtensionManifestTest {
17 protected:
18 virtual void SetUp() OVERRIDE {
19 ExtensionManifestTest::SetUp();
20 (new PluginsHandler)->Register();
21 (new RequirementsHandler)->Register();
22 }
23 };
24
25 TEST_F(RequirementsManifestTest, RequirementsInvalid) {
16 Testcase testcases[] = { 26 Testcase testcases[] = {
17 Testcase("requirements_invalid_requirements.json", 27 Testcase("requirements_invalid_requirements.json",
18 errors::kInvalidRequirements), 28 errors::kInvalidRequirements),
19 Testcase("requirements_invalid_keys.json", errors::kInvalidRequirements), 29 Testcase("requirements_invalid_keys.json", errors::kInvalidRequirements),
20 Testcase("requirements_invalid_3d.json", 30 Testcase("requirements_invalid_3d.json",
21 ErrorUtils::FormatErrorMessage( 31 ErrorUtils::FormatErrorMessage(
22 errors::kInvalidRequirement, "3D")), 32 errors::kInvalidRequirement, "3D")),
23 Testcase("requirements_invalid_3d_features.json", 33 Testcase("requirements_invalid_3d_features.json",
24 ErrorUtils::FormatErrorMessage( 34 ErrorUtils::FormatErrorMessage(
25 errors::kInvalidRequirement, "3D")), 35 errors::kInvalidRequirement, "3D")),
(...skipping 10 matching lines...) Expand all
36 ErrorUtils::FormatErrorMessage( 46 ErrorUtils::FormatErrorMessage(
37 errors::kInvalidRequirement, "plugins")), 47 errors::kInvalidRequirement, "plugins")),
38 Testcase("requirements_invalid_plugins_value.json", 48 Testcase("requirements_invalid_plugins_value.json",
39 ErrorUtils::FormatErrorMessage( 49 ErrorUtils::FormatErrorMessage(
40 errors::kInvalidRequirement, "plugins")) 50 errors::kInvalidRequirement, "plugins"))
41 }; 51 };
42 52
43 RunTestcases(testcases, arraysize(testcases), EXPECT_TYPE_ERROR); 53 RunTestcases(testcases, arraysize(testcases), EXPECT_TYPE_ERROR);
44 } 54 }
45 55
46 TEST_F(ExtensionManifestTest, RequirementsValid) { 56 TEST_F(RequirementsManifestTest, RequirementsValid) {
47 // Test the defaults. 57 // Test the defaults.
48 scoped_refptr<extensions::Extension> extension(LoadAndExpectSuccess( 58 scoped_refptr<Extension> extension(LoadAndExpectSuccess(
49 "requirements_valid_empty.json")); 59 "requirements_valid_empty.json"));
50 ASSERT_TRUE(extension.get()); 60 ASSERT_TRUE(extension.get());
51 EXPECT_EQ(extension->requirements().webgl, false); 61 EXPECT_EQ(RequirementsInfo::GetRequirements(extension).webgl, false);
52 EXPECT_EQ(extension->requirements().css3d, false); 62 EXPECT_EQ(RequirementsInfo::GetRequirements(extension).css3d, false);
53 EXPECT_EQ(extension->requirements().npapi, false); 63 EXPECT_EQ(RequirementsInfo::GetRequirements(extension).npapi, false);
54 64
55 // Test loading all the requirements. 65 // Test loading all the requirements.
56 extension = LoadAndExpectSuccess("requirements_valid_full.json"); 66 extension = LoadAndExpectSuccess("requirements_valid_full.json");
57 ASSERT_TRUE(extension.get()); 67 ASSERT_TRUE(extension.get());
58 EXPECT_EQ(extension->requirements().webgl, true); 68 EXPECT_EQ(RequirementsInfo::GetRequirements(extension).webgl, true);
59 EXPECT_EQ(extension->requirements().css3d, true); 69 EXPECT_EQ(RequirementsInfo::GetRequirements(extension).css3d, true);
60 EXPECT_EQ(extension->requirements().npapi, true); 70 EXPECT_EQ(RequirementsInfo::GetRequirements(extension).npapi, true);
61 } 71 }
62 72
63 // When an npapi plugin is present, the default of the "npapi" requirement 73 // When an npapi plugin is present, the default of the "npapi" requirement
64 // changes. 74 // changes.
65 TEST_F(ExtensionManifestTest, RequirementsNpapiDefault) { 75 TEST_F(RequirementsManifestTest, RequirementsNpapiDefault) {
66 scoped_refptr<extensions::Extension> extension(LoadAndExpectSuccess( 76 scoped_refptr<Extension> extension(LoadAndExpectSuccess(
67 "requirements_npapi_empty.json")); 77 "requirements_npapi_empty.json"));
68 ASSERT_TRUE(extension.get()); 78 ASSERT_TRUE(extension.get());
69 EXPECT_EQ(extension->requirements().webgl, false); 79 EXPECT_EQ(RequirementsInfo::GetRequirements(extension).webgl, false);
70 EXPECT_EQ(extension->requirements().css3d, false); 80 EXPECT_EQ(RequirementsInfo::GetRequirements(extension).css3d, false);
71 EXPECT_EQ(extension->requirements().npapi, true); 81 EXPECT_EQ(RequirementsInfo::GetRequirements(extension).npapi, true);
72 82
73 extension = LoadAndExpectSuccess( 83 extension = LoadAndExpectSuccess(
74 "requirements_npapi_empty_plugins_empty.json"); 84 "requirements_npapi_empty_plugins_empty.json");
75 ASSERT_TRUE(extension.get()); 85 ASSERT_TRUE(extension.get());
76 EXPECT_EQ(extension->requirements().webgl, false); 86 EXPECT_EQ(RequirementsInfo::GetRequirements(extension).webgl, false);
77 EXPECT_EQ(extension->requirements().css3d, false); 87 EXPECT_EQ(RequirementsInfo::GetRequirements(extension).css3d, false);
78 EXPECT_EQ(extension->requirements().npapi, false); 88 EXPECT_EQ(RequirementsInfo::GetRequirements(extension).npapi, false);
79 89
80 extension = LoadAndExpectSuccess("requirements_npapi.json"); 90 extension = LoadAndExpectSuccess("requirements_npapi.json");
81 ASSERT_TRUE(extension.get()); 91 ASSERT_TRUE(extension.get());
82 EXPECT_EQ(extension->requirements().webgl, false); 92 EXPECT_EQ(RequirementsInfo::GetRequirements(extension).webgl, false);
83 EXPECT_EQ(extension->requirements().css3d, false); 93 EXPECT_EQ(RequirementsInfo::GetRequirements(extension).css3d, false);
84 EXPECT_EQ(extension->requirements().npapi, false); 94 EXPECT_EQ(RequirementsInfo::GetRequirements(extension).npapi, false);
85 95
86 extension = LoadAndExpectSuccess("requirements_npapi_plugins_empty.json"); 96 extension = LoadAndExpectSuccess("requirements_npapi_plugins_empty.json");
87 ASSERT_TRUE(extension.get()); 97 ASSERT_TRUE(extension.get());
88 EXPECT_EQ(extension->requirements().webgl, false); 98 EXPECT_EQ(RequirementsInfo::GetRequirements(extension).webgl, false);
89 EXPECT_EQ(extension->requirements().css3d, false); 99 EXPECT_EQ(RequirementsInfo::GetRequirements(extension).css3d, false);
90 EXPECT_EQ(extension->requirements().npapi, true); 100 EXPECT_EQ(RequirementsInfo::GetRequirements(extension).npapi, true);
91 } 101 }
102
103 } // namespace extensions
OLDNEW
« no previous file with comments | « chrome/common/extensions/manifest_handlers/requirements_handler.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698