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

Side by Side Diff: chrome/common/extensions/features/feature_unittest.cc

Issue 10909239: Rename PACKAGED_APP references to LEGACY_PACKAGED_APP (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Comments Created 8 years, 2 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
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/features/feature.h" 5 #include "chrome/common/extensions/features/feature.h"
6 6
7 #include "testing/gtest/include/gtest/gtest.h" 7 #include "testing/gtest/include/gtest/gtest.h"
8 8
9 using chrome::VersionInfo; 9 using chrome::VersionInfo;
10 using extensions::Extension; 10 using extensions::Extension;
(...skipping 21 matching lines...) Expand all
32 }; 32 };
33 33
34 TEST_F(ExtensionFeatureTest, IsAvailableNullCase) { 34 TEST_F(ExtensionFeatureTest, IsAvailableNullCase) {
35 const IsAvailableTestData tests[] = { 35 const IsAvailableTestData tests[] = {
36 { "", Extension::TYPE_UNKNOWN, 36 { "", Extension::TYPE_UNKNOWN,
37 Feature::UNSPECIFIED_LOCATION, Feature::UNSPECIFIED_PLATFORM, -1, 37 Feature::UNSPECIFIED_LOCATION, Feature::UNSPECIFIED_PLATFORM, -1,
38 Feature::IS_AVAILABLE }, 38 Feature::IS_AVAILABLE },
39 { "random-extension", Extension::TYPE_UNKNOWN, 39 { "random-extension", Extension::TYPE_UNKNOWN,
40 Feature::UNSPECIFIED_LOCATION, Feature::UNSPECIFIED_PLATFORM, -1, 40 Feature::UNSPECIFIED_LOCATION, Feature::UNSPECIFIED_PLATFORM, -1,
41 Feature::IS_AVAILABLE }, 41 Feature::IS_AVAILABLE },
42 { "", Extension::TYPE_PACKAGED_APP, 42 { "", Extension::TYPE_LEGACY_PACKAGED_APP,
43 Feature::UNSPECIFIED_LOCATION, Feature::UNSPECIFIED_PLATFORM, -1, 43 Feature::UNSPECIFIED_LOCATION, Feature::UNSPECIFIED_PLATFORM, -1,
44 Feature::IS_AVAILABLE }, 44 Feature::IS_AVAILABLE },
45 { "", Extension::TYPE_UNKNOWN, 45 { "", Extension::TYPE_UNKNOWN,
46 Feature::UNSPECIFIED_LOCATION, Feature::UNSPECIFIED_PLATFORM, -1, 46 Feature::UNSPECIFIED_LOCATION, Feature::UNSPECIFIED_PLATFORM, -1,
47 Feature::IS_AVAILABLE }, 47 Feature::IS_AVAILABLE },
48 { "", Extension::TYPE_UNKNOWN, 48 { "", Extension::TYPE_UNKNOWN,
49 Feature::COMPONENT_LOCATION, Feature::UNSPECIFIED_PLATFORM, -1, 49 Feature::COMPONENT_LOCATION, Feature::UNSPECIFIED_PLATFORM, -1,
50 Feature::IS_AVAILABLE }, 50 Feature::IS_AVAILABLE },
51 { "", Extension::TYPE_UNKNOWN, 51 { "", Extension::TYPE_UNKNOWN,
52 Feature::UNSPECIFIED_LOCATION, Feature::CHROMEOS_PLATFORM, -1, 52 Feature::UNSPECIFIED_LOCATION, Feature::CHROMEOS_PLATFORM, -1,
(...skipping 27 matching lines...) Expand all
80 "bar", Extension::TYPE_UNKNOWN, Feature::UNSPECIFIED_LOCATION, -1, 80 "bar", Extension::TYPE_UNKNOWN, Feature::UNSPECIFIED_LOCATION, -1,
81 Feature::UNSPECIFIED_PLATFORM).result()); 81 Feature::UNSPECIFIED_PLATFORM).result());
82 82
83 EXPECT_EQ(Feature::NOT_FOUND_IN_WHITELIST, feature.IsAvailableToManifest( 83 EXPECT_EQ(Feature::NOT_FOUND_IN_WHITELIST, feature.IsAvailableToManifest(
84 "baz", Extension::TYPE_UNKNOWN, Feature::UNSPECIFIED_LOCATION, -1, 84 "baz", Extension::TYPE_UNKNOWN, Feature::UNSPECIFIED_LOCATION, -1,
85 Feature::UNSPECIFIED_PLATFORM).result()); 85 Feature::UNSPECIFIED_PLATFORM).result());
86 EXPECT_EQ(Feature::NOT_FOUND_IN_WHITELIST, feature.IsAvailableToManifest( 86 EXPECT_EQ(Feature::NOT_FOUND_IN_WHITELIST, feature.IsAvailableToManifest(
87 "", Extension::TYPE_UNKNOWN, Feature::UNSPECIFIED_LOCATION, -1, 87 "", Extension::TYPE_UNKNOWN, Feature::UNSPECIFIED_LOCATION, -1,
88 Feature::UNSPECIFIED_PLATFORM).result()); 88 Feature::UNSPECIFIED_PLATFORM).result());
89 89
90 feature.extension_types()->insert(Extension::TYPE_PACKAGED_APP); 90 feature.extension_types()->insert(Extension::TYPE_LEGACY_PACKAGED_APP);
91 EXPECT_EQ(Feature::NOT_FOUND_IN_WHITELIST, feature.IsAvailableToManifest( 91 EXPECT_EQ(Feature::NOT_FOUND_IN_WHITELIST, feature.IsAvailableToManifest(
92 "baz", Extension::TYPE_PACKAGED_APP, Feature::UNSPECIFIED_LOCATION, -1, 92 "baz", Extension::TYPE_LEGACY_PACKAGED_APP,
93 Feature::UNSPECIFIED_LOCATION, -1,
93 Feature::UNSPECIFIED_PLATFORM).result()); 94 Feature::UNSPECIFIED_PLATFORM).result());
94 } 95 }
95 96
96 TEST_F(ExtensionFeatureTest, PackageType) { 97 TEST_F(ExtensionFeatureTest, PackageType) {
97 Feature feature; 98 Feature feature;
98 feature.extension_types()->insert(Extension::TYPE_EXTENSION); 99 feature.extension_types()->insert(Extension::TYPE_EXTENSION);
99 feature.extension_types()->insert(Extension::TYPE_PACKAGED_APP); 100 feature.extension_types()->insert(Extension::TYPE_LEGACY_PACKAGED_APP);
100 101
101 EXPECT_EQ(Feature::IS_AVAILABLE, feature.IsAvailableToManifest( 102 EXPECT_EQ(Feature::IS_AVAILABLE, feature.IsAvailableToManifest(
102 "", Extension::TYPE_EXTENSION, Feature::UNSPECIFIED_LOCATION, -1, 103 "", Extension::TYPE_EXTENSION, Feature::UNSPECIFIED_LOCATION, -1,
103 Feature::UNSPECIFIED_PLATFORM).result()); 104 Feature::UNSPECIFIED_PLATFORM).result());
104 EXPECT_EQ(Feature::IS_AVAILABLE, feature.IsAvailableToManifest( 105 EXPECT_EQ(Feature::IS_AVAILABLE, feature.IsAvailableToManifest(
105 "", Extension::TYPE_PACKAGED_APP, Feature::UNSPECIFIED_LOCATION, -1, 106 "", Extension::TYPE_LEGACY_PACKAGED_APP, Feature::UNSPECIFIED_LOCATION,
106 Feature::UNSPECIFIED_PLATFORM).result()); 107 -1, Feature::UNSPECIFIED_PLATFORM).result());
107 108
108 EXPECT_EQ(Feature::INVALID_TYPE, feature.IsAvailableToManifest( 109 EXPECT_EQ(Feature::INVALID_TYPE, feature.IsAvailableToManifest(
109 "", Extension::TYPE_UNKNOWN, Feature::UNSPECIFIED_LOCATION, -1, 110 "", Extension::TYPE_UNKNOWN, Feature::UNSPECIFIED_LOCATION, -1,
110 Feature::UNSPECIFIED_PLATFORM).result()); 111 Feature::UNSPECIFIED_PLATFORM).result());
111 EXPECT_EQ(Feature::INVALID_TYPE, feature.IsAvailableToManifest( 112 EXPECT_EQ(Feature::INVALID_TYPE, feature.IsAvailableToManifest(
112 "", Extension::TYPE_THEME, Feature::UNSPECIFIED_LOCATION, -1, 113 "", Extension::TYPE_THEME, Feature::UNSPECIFIED_LOCATION, -1,
113 Feature::UNSPECIFIED_PLATFORM).result()); 114 Feature::UNSPECIFIED_PLATFORM).result());
114 } 115 }
115 116
116 TEST_F(ExtensionFeatureTest, Context) { 117 TEST_F(ExtensionFeatureTest, Context) {
117 Feature feature; 118 Feature feature;
118 feature.contexts()->insert(Feature::BLESSED_EXTENSION_CONTEXT); 119 feature.contexts()->insert(Feature::BLESSED_EXTENSION_CONTEXT);
119 feature.extension_types()->insert(Extension::TYPE_PACKAGED_APP); 120 feature.extension_types()->insert(Extension::TYPE_LEGACY_PACKAGED_APP);
120 feature.set_platform(Feature::CHROMEOS_PLATFORM); 121 feature.set_platform(Feature::CHROMEOS_PLATFORM);
121 feature.set_min_manifest_version(21); 122 feature.set_min_manifest_version(21);
122 feature.set_max_manifest_version(25); 123 feature.set_max_manifest_version(25);
123 124
124 DictionaryValue manifest; 125 DictionaryValue manifest;
125 manifest.SetString("name", "test"); 126 manifest.SetString("name", "test");
126 manifest.SetString("version", "1"); 127 manifest.SetString("version", "1");
127 manifest.SetInteger("manifest_version", 21); 128 manifest.SetInteger("manifest_version", 21);
128 manifest.SetString("app.launch.local_path", "foo.html"); 129 manifest.SetString("app.launch.local_path", "foo.html");
129 130
130 std::string error; 131 std::string error;
131 scoped_refptr<const Extension> extension(Extension::Create( 132 scoped_refptr<const Extension> extension(Extension::Create(
132 FilePath(), Extension::INTERNAL, manifest, Extension::NO_FLAGS, &error)); 133 FilePath(), Extension::INTERNAL, manifest, Extension::NO_FLAGS, &error));
133 EXPECT_EQ("", error); 134 EXPECT_EQ("", error);
134 ASSERT_TRUE(extension.get()); 135 ASSERT_TRUE(extension.get());
135 136
136 feature.whitelist()->insert("monkey"); 137 feature.whitelist()->insert("monkey");
137 EXPECT_EQ(Feature::NOT_FOUND_IN_WHITELIST, feature.IsAvailableToContext( 138 EXPECT_EQ(Feature::NOT_FOUND_IN_WHITELIST, feature.IsAvailableToContext(
138 extension.get(), Feature::BLESSED_EXTENSION_CONTEXT, 139 extension.get(), Feature::BLESSED_EXTENSION_CONTEXT,
139 Feature::CHROMEOS_PLATFORM).result()); 140 Feature::CHROMEOS_PLATFORM).result());
140 feature.whitelist()->clear(); 141 feature.whitelist()->clear();
141 142
142 feature.extension_types()->clear(); 143 feature.extension_types()->clear();
143 feature.extension_types()->insert(Extension::TYPE_THEME); 144 feature.extension_types()->insert(Extension::TYPE_THEME);
144 EXPECT_EQ(Feature::INVALID_TYPE, feature.IsAvailableToContext( 145 EXPECT_EQ(Feature::INVALID_TYPE, feature.IsAvailableToContext(
145 extension.get(), Feature::BLESSED_EXTENSION_CONTEXT, 146 extension.get(), Feature::BLESSED_EXTENSION_CONTEXT,
146 Feature::CHROMEOS_PLATFORM).result()); 147 Feature::CHROMEOS_PLATFORM).result());
147 feature.extension_types()->clear(); 148 feature.extension_types()->clear();
148 feature.extension_types()->insert(Extension::TYPE_PACKAGED_APP); 149 feature.extension_types()->insert(Extension::TYPE_LEGACY_PACKAGED_APP);
149 150
150 feature.contexts()->clear(); 151 feature.contexts()->clear();
151 feature.contexts()->insert(Feature::UNBLESSED_EXTENSION_CONTEXT); 152 feature.contexts()->insert(Feature::UNBLESSED_EXTENSION_CONTEXT);
152 EXPECT_EQ(Feature::INVALID_CONTEXT, feature.IsAvailableToContext( 153 EXPECT_EQ(Feature::INVALID_CONTEXT, feature.IsAvailableToContext(
153 extension.get(), Feature::BLESSED_EXTENSION_CONTEXT, 154 extension.get(), Feature::BLESSED_EXTENSION_CONTEXT,
154 Feature::CHROMEOS_PLATFORM).result()); 155 Feature::CHROMEOS_PLATFORM).result());
155 feature.contexts()->clear(); 156 feature.contexts()->clear();
156 feature.contexts()->insert(Feature::BLESSED_EXTENSION_CONTEXT); 157 feature.contexts()->insert(Feature::BLESSED_EXTENSION_CONTEXT);
157 158
158 feature.set_location(Feature::COMPONENT_LOCATION); 159 feature.set_location(Feature::COMPONENT_LOCATION);
(...skipping 118 matching lines...) Expand 10 before | Expand all | Expand 10 after
277 extension_types->Append(Value::CreateStringValue("theme")); 278 extension_types->Append(Value::CreateStringValue("theme"));
278 extension_types->Append(Value::CreateStringValue("packaged_app")); 279 extension_types->Append(Value::CreateStringValue("packaged_app"));
279 extension_types->Append(Value::CreateStringValue("hosted_app")); 280 extension_types->Append(Value::CreateStringValue("hosted_app"));
280 extension_types->Append(Value::CreateStringValue("platform_app")); 281 extension_types->Append(Value::CreateStringValue("platform_app"));
281 value->Set("extension_types", extension_types); 282 value->Set("extension_types", extension_types);
282 scoped_ptr<Feature> feature(new Feature()); 283 scoped_ptr<Feature> feature(new Feature());
283 feature->Parse(value.get()); 284 feature->Parse(value.get());
284 EXPECT_EQ(5u, feature->extension_types()->size()); 285 EXPECT_EQ(5u, feature->extension_types()->size());
285 EXPECT_TRUE(feature->extension_types()->count(Extension::TYPE_EXTENSION)); 286 EXPECT_TRUE(feature->extension_types()->count(Extension::TYPE_EXTENSION));
286 EXPECT_TRUE(feature->extension_types()->count(Extension::TYPE_THEME)); 287 EXPECT_TRUE(feature->extension_types()->count(Extension::TYPE_THEME));
287 EXPECT_TRUE(feature->extension_types()->count(Extension::TYPE_PACKAGED_APP)); 288 EXPECT_TRUE(feature->extension_types()->count(
289 Extension::TYPE_LEGACY_PACKAGED_APP));
288 EXPECT_TRUE(feature->extension_types()->count(Extension::TYPE_HOSTED_APP)); 290 EXPECT_TRUE(feature->extension_types()->count(Extension::TYPE_HOSTED_APP));
289 EXPECT_TRUE(feature->extension_types()->count(Extension::TYPE_PLATFORM_APP)); 291 EXPECT_TRUE(feature->extension_types()->count(Extension::TYPE_PLATFORM_APP));
290 292
291 value->SetString("extension_types", "all"); 293 value->SetString("extension_types", "all");
292 scoped_ptr<Feature> feature2(new Feature()); 294 scoped_ptr<Feature> feature2(new Feature());
293 feature2->Parse(value.get()); 295 feature2->Parse(value.get());
294 EXPECT_EQ(*(feature->extension_types()), *(feature2->extension_types())); 296 EXPECT_EQ(*(feature->extension_types()), *(feature2->extension_types()));
295 } 297 }
296 298
297 TEST_F(ExtensionFeatureTest, ParseContexts) { 299 TEST_F(ExtensionFeatureTest, ParseContexts) {
(...skipping 214 matching lines...) Expand 10 before | Expand all | Expand 10 after
512 IsAvailableInChannel("", VersionInfo::CHANNEL_CANARY)); 514 IsAvailableInChannel("", VersionInfo::CHANNEL_CANARY));
513 EXPECT_EQ(Feature::UNSUPPORTED_CHANNEL, 515 EXPECT_EQ(Feature::UNSUPPORTED_CHANNEL,
514 IsAvailableInChannel("", VersionInfo::CHANNEL_DEV)); 516 IsAvailableInChannel("", VersionInfo::CHANNEL_DEV));
515 EXPECT_EQ(Feature::UNSUPPORTED_CHANNEL, 517 EXPECT_EQ(Feature::UNSUPPORTED_CHANNEL,
516 IsAvailableInChannel("", VersionInfo::CHANNEL_BETA)); 518 IsAvailableInChannel("", VersionInfo::CHANNEL_BETA));
517 EXPECT_EQ(Feature::UNSUPPORTED_CHANNEL, 519 EXPECT_EQ(Feature::UNSUPPORTED_CHANNEL,
518 IsAvailableInChannel("", VersionInfo::CHANNEL_STABLE)); 520 IsAvailableInChannel("", VersionInfo::CHANNEL_STABLE));
519 } 521 }
520 522
521 } // namespace 523 } // namespace
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698