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

Side by Side Diff: chrome/browser/extensions/component_loader_unittest.cc

Issue 11014009: Beginnings of the script bubble. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: More minor cleanup 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 | 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 <string> 5 #include <string>
6 6
7 #include "chrome/browser/extensions/component_loader.h" 7 #include "chrome/browser/extensions/component_loader.h"
8 8
9 #include "base/file_util.h" 9 #include "base/file_util.h"
10 #include "base/path_service.h" 10 #include "base/path_service.h"
(...skipping 151 matching lines...) Expand 10 before | Expand all | Expand 10 after
162 ASSERT_EQ(2, value); 162 ASSERT_EQ(2, value);
163 163
164 std::string string_value; 164 std::string string_value;
165 manifest.reset(component_loader_.ParseManifest(manifest_contents_)); 165 manifest.reset(component_loader_.ParseManifest(manifest_contents_));
166 ASSERT_TRUE(manifest->GetString("background.page", &string_value)); 166 ASSERT_TRUE(manifest->GetString("background.page", &string_value));
167 ASSERT_EQ("backgroundpage.html", string_value); 167 ASSERT_EQ("backgroundpage.html", string_value);
168 } 168 }
169 169
170 // Test that the extension isn't loaded if the extension service isn't ready. 170 // Test that the extension isn't loaded if the extension service isn't ready.
171 TEST_F(ComponentLoaderTest, AddWhenNotReady) { 171 TEST_F(ComponentLoaderTest, AddWhenNotReady) {
172 scoped_refptr<const Extension> extension;
173 extension_service_.set_ready(false); 172 extension_service_.set_ready(false);
174 extension = component_loader_.Add(manifest_contents_, extension_path_); 173 std::string extension_id =
175 ASSERT_EQ((Extension*)NULL, extension.get()); 174 component_loader_.Add(manifest_contents_, extension_path_);
175 ASSERT_FALSE(extension_id.empty());
Jeffrey Yasskin 2012/10/02 00:26:31 I wonder if ASSERT_NE("", extension_id) would give
Aaron Boodman 2012/10/02 01:28:52 Done, throughout.
176 ASSERT_EQ(0u, extension_service_.extensions()->size()); 176 ASSERT_EQ(0u, extension_service_.extensions()->size());
177 } 177 }
178 178
179 // Test that it *is* loaded when the extension service *is* ready. 179 // Test that it *is* loaded when the extension service *is* ready.
180 TEST_F(ComponentLoaderTest, AddWhenReady) { 180 TEST_F(ComponentLoaderTest, AddWhenReady) {
181 scoped_refptr<const Extension> extension;
182 extension_service_.set_ready(true); 181 extension_service_.set_ready(true);
183 extension = component_loader_.Add(manifest_contents_, extension_path_); 182 std::string extension_id =
184 ASSERT_NE((Extension*)NULL, extension.get()); 183 component_loader_.Add(manifest_contents_, extension_path_);
184 ASSERT_FALSE(extension_id.empty());
185 ASSERT_EQ(1u, extension_service_.extensions()->size()); 185 ASSERT_EQ(1u, extension_service_.extensions()->size());
186 ASSERT_TRUE(extension_service_.extensions()->GetByID(extension_id));
186 } 187 }
187 188
188 TEST_F(ComponentLoaderTest, Remove) { 189 TEST_F(ComponentLoaderTest, Remove) {
189 extension_service_.set_ready(false); 190 extension_service_.set_ready(false);
190 191
191 // Removing an extension that was never added should be ok. 192 // Removing an extension that was never added should be ok.
192 component_loader_.Remove(extension_path_); 193 component_loader_.Remove(extension_path_);
193 ASSERT_EQ(0u, extension_service_.extensions()->size()); 194 ASSERT_EQ(0u, extension_service_.extensions()->size());
194 195
195 // Try adding and removing before LoadAll() is called. 196 // Try adding and removing before LoadAll() is called.
196 component_loader_.Add(manifest_contents_, extension_path_); 197 component_loader_.Add(manifest_contents_, extension_path_);
197 component_loader_.Remove(extension_path_); 198 component_loader_.Remove(extension_path_);
198 component_loader_.LoadAll(); 199 component_loader_.LoadAll();
199 ASSERT_EQ(0u, extension_service_.extensions()->size()); 200 ASSERT_EQ(0u, extension_service_.extensions()->size());
200 201
201 // Load an extension, and check that it's unloaded when Remove() is called. 202 // Load an extension, and check that it's unloaded when Remove() is called.
202 scoped_refptr<const Extension> extension;
203 extension_service_.set_ready(true); 203 extension_service_.set_ready(true);
204 extension = component_loader_.Add(manifest_contents_, extension_path_); 204 std::string extension_id =
205 ASSERT_NE((Extension*)NULL, extension.get()); 205 component_loader_.Add(manifest_contents_, extension_path_);
206 ASSERT_EQ(1u, extension_service_.extensions()->size());
206 component_loader_.Remove(extension_path_); 207 component_loader_.Remove(extension_path_);
207 ASSERT_EQ(0u, extension_service_.extensions()->size()); 208 ASSERT_EQ(0u, extension_service_.extensions()->size());
208 209
209 // And after calling LoadAll(), it shouldn't get loaded. 210 // And after calling LoadAll(), it shouldn't get loaded.
210 component_loader_.LoadAll(); 211 component_loader_.LoadAll();
211 ASSERT_EQ(0u, extension_service_.extensions()->size()); 212 ASSERT_EQ(0u, extension_service_.extensions()->size());
212 } 213 }
213 214
214 TEST_F(ComponentLoaderTest, LoadAll) { 215 TEST_F(ComponentLoaderTest, LoadAll) {
215 extension_service_.set_ready(false); 216 extension_service_.set_ready(false);
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after
280 ASSERT_EQ(default_count + 1, extension_service_.extensions()->size()); 281 ASSERT_EQ(default_count + 1, extension_service_.extensions()->size());
281 ASSERT_EQ(0u, extension_service_.unloaded_count()); 282 ASSERT_EQ(0u, extension_service_.unloaded_count());
282 283
283 // replace loaded component extension. 284 // replace loaded component extension.
284 component_loader_.AddOrReplace(known_extension); 285 component_loader_.AddOrReplace(known_extension);
285 ASSERT_EQ(default_count + 1, extension_service_.extensions()->size()); 286 ASSERT_EQ(default_count + 1, extension_service_.extensions()->size());
286 ASSERT_EQ(1u, extension_service_.unloaded_count()); 287 ASSERT_EQ(1u, extension_service_.unloaded_count());
287 } 288 }
288 289
289 } // namespace extensions 290 } // namespace extensions
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698