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

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

Issue 13971005: Basic multi-module support (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: add browser test Created 7 years, 7 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/manifest.h" 5 #include "chrome/common/extensions/manifest.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <set> 8 #include <set>
9 #include <string> 9 #include <string>
10 10
(...skipping 18 matching lines...) Expand all
29 29
30 protected: 30 protected:
31 void AssertType(Manifest* manifest, Manifest::Type type) { 31 void AssertType(Manifest* manifest, Manifest::Type type) {
32 EXPECT_EQ(type, manifest->type()); 32 EXPECT_EQ(type, manifest->type());
33 EXPECT_EQ(type == Manifest::TYPE_THEME, manifest->is_theme()); 33 EXPECT_EQ(type == Manifest::TYPE_THEME, manifest->is_theme());
34 EXPECT_EQ(type == Manifest::TYPE_PLATFORM_APP, 34 EXPECT_EQ(type == Manifest::TYPE_PLATFORM_APP,
35 manifest->is_platform_app()); 35 manifest->is_platform_app());
36 EXPECT_EQ(type == Manifest::TYPE_LEGACY_PACKAGED_APP, 36 EXPECT_EQ(type == Manifest::TYPE_LEGACY_PACKAGED_APP,
37 manifest->is_legacy_packaged_app()); 37 manifest->is_legacy_packaged_app());
38 EXPECT_EQ(type == Manifest::TYPE_HOSTED_APP, manifest->is_hosted_app()); 38 EXPECT_EQ(type == Manifest::TYPE_HOSTED_APP, manifest->is_hosted_app());
39 EXPECT_EQ(type == Manifest::TYPE_SHARED_MODULE,
40 manifest->is_shared_module());
39 } 41 }
40 42
41 // Helper function that replaces the Manifest held by |manifest| with a copy 43 // Helper function that replaces the Manifest held by |manifest| with a copy
42 // with its |key| changed to |value|. If |value| is NULL, then |key| will 44 // with its |key| changed to |value|. If |value| is NULL, then |key| will
43 // instead be deleted. 45 // instead be deleted.
44 void MutateManifest(scoped_ptr<Manifest>* manifest, 46 void MutateManifest(scoped_ptr<Manifest>* manifest,
45 const std::string& key, 47 const std::string& key,
46 base::Value* value) { 48 base::Value* value) {
47 scoped_ptr<base::DictionaryValue> manifest_value( 49 scoped_ptr<base::DictionaryValue> manifest_value(
48 manifest->get()->value()->DeepCopy()); 50 manifest->get()->value()->DeepCopy());
(...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after
131 // By default, the type is Extension. 133 // By default, the type is Extension.
132 AssertType(manifest.get(), Manifest::TYPE_EXTENSION); 134 AssertType(manifest.get(), Manifest::TYPE_EXTENSION);
133 135
134 // Theme. 136 // Theme.
135 MutateManifest( 137 MutateManifest(
136 &manifest, keys::kTheme, new base::DictionaryValue()); 138 &manifest, keys::kTheme, new base::DictionaryValue());
137 AssertType(manifest.get(), Manifest::TYPE_THEME); 139 AssertType(manifest.get(), Manifest::TYPE_THEME);
138 MutateManifest( 140 MutateManifest(
139 &manifest, keys::kTheme, NULL); 141 &manifest, keys::kTheme, NULL);
140 142
143 // Shared module.
144 MutateManifest(
145 &manifest, keys::kExport, new base::DictionaryValue());
146 AssertType(manifest.get(), Manifest::TYPE_SHARED_MODULE);
147 MutateManifest(
148 &manifest, keys::kExport, NULL);
149
141 // Packaged app. 150 // Packaged app.
142 MutateManifest( 151 MutateManifest(
143 &manifest, keys::kApp, new base::DictionaryValue()); 152 &manifest, keys::kApp, new base::DictionaryValue());
144 AssertType(manifest.get(), Manifest::TYPE_LEGACY_PACKAGED_APP); 153 AssertType(manifest.get(), Manifest::TYPE_LEGACY_PACKAGED_APP);
145 154
146 // Platform app. 155 // Platform app.
147 MutateManifest( 156 MutateManifest(
148 &manifest, keys::kPlatformAppBackground, new base::DictionaryValue()); 157 &manifest, keys::kPlatformAppBackground, new base::DictionaryValue());
149 AssertType(manifest.get(), Manifest::TYPE_PLATFORM_APP); 158 AssertType(manifest.get(), Manifest::TYPE_PLATFORM_APP);
150 MutateManifest( 159 MutateManifest(
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after
205 EXPECT_FALSE(manifest->Get(keys::kCommands, &output)); 214 EXPECT_FALSE(manifest->Get(keys::kCommands, &output));
206 215
207 MutateManifest( 216 MutateManifest(
208 &manifest, keys::kManifestVersion, new base::FundamentalValue(2)); 217 &manifest, keys::kManifestVersion, new base::FundamentalValue(2));
209 EXPECT_TRUE(manifest->HasKey(keys::kCommands)); 218 EXPECT_TRUE(manifest->HasKey(keys::kCommands));
210 EXPECT_TRUE(manifest->Get(keys::kCommands, &output)); 219 EXPECT_TRUE(manifest->Get(keys::kCommands, &output));
211 } 220 }
212 }; 221 };
213 222
214 } // namespace extensions 223 } // namespace extensions
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698