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

Side by Side Diff: extensions/browser/extension_registry_unittest.cc

Issue 207613002: Cleanup: Remove NOTIFICATION_EXTENSION_UNLOADED usage in MediaScanManager. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: rebase, add error console Created 6 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 | Annotate | Revision Log
« no previous file with comments | « extensions/browser/extension_registry_observer.h ('k') | extensions/browser/runtime_data.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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 "extensions/browser/extension_registry.h" 5 #include "extensions/browser/extension_registry.h"
6 6
7 #include <string> 7 #include <string>
8 8
9 #include "base/memory/ref_counted.h" 9 #include "base/memory/ref_counted.h"
10 #include "extensions/browser/extension_registry_observer.h" 10 #include "extensions/browser/extension_registry_observer.h"
(...skipping 25 matching lines...) Expand all
36 public: 36 public:
37 void Reset() { 37 void Reset() {
38 loaded_.clear(); 38 loaded_.clear();
39 unloaded_.clear(); 39 unloaded_.clear();
40 } 40 }
41 41
42 const ExtensionList& loaded() { return loaded_; } 42 const ExtensionList& loaded() { return loaded_; }
43 const ExtensionList& unloaded() { return unloaded_; } 43 const ExtensionList& unloaded() { return unloaded_; }
44 44
45 private: 45 private:
46 virtual void OnExtensionLoaded(const Extension* extension) OVERRIDE { 46 virtual void OnExtensionLoaded(content::BrowserContext* browser_context,
47 const Extension* extension) OVERRIDE {
47 loaded_.push_back(extension); 48 loaded_.push_back(extension);
48 } 49 }
49 50
50 virtual void OnExtensionUnloaded(const Extension* extension) OVERRIDE { 51 virtual void OnExtensionUnloaded(content::BrowserContext* browser_context,
52 const Extension* extension) OVERRIDE {
51 unloaded_.push_back(extension); 53 unloaded_.push_back(extension);
52 } 54 }
53 55
54 ExtensionList loaded_; 56 ExtensionList loaded_;
55 ExtensionList unloaded_; 57 ExtensionList unloaded_;
56 }; 58 };
57 59
58 TEST_F(ExtensionRegistryTest, FillAndClearRegistry) { 60 TEST_F(ExtensionRegistryTest, FillAndClearRegistry) {
59 ExtensionRegistry registry; 61 ExtensionRegistry registry(NULL);
60 scoped_refptr<Extension> extension1 = test_util::CreateExtensionWithID("id1"); 62 scoped_refptr<Extension> extension1 = test_util::CreateExtensionWithID("id1");
61 scoped_refptr<Extension> extension2 = test_util::CreateExtensionWithID("id2"); 63 scoped_refptr<Extension> extension2 = test_util::CreateExtensionWithID("id2");
62 scoped_refptr<Extension> extension3 = test_util::CreateExtensionWithID("id3"); 64 scoped_refptr<Extension> extension3 = test_util::CreateExtensionWithID("id3");
63 scoped_refptr<Extension> extension4 = test_util::CreateExtensionWithID("id4"); 65 scoped_refptr<Extension> extension4 = test_util::CreateExtensionWithID("id4");
64 66
65 // All the sets start empty. 67 // All the sets start empty.
66 EXPECT_EQ(0u, registry.enabled_extensions().size()); 68 EXPECT_EQ(0u, registry.enabled_extensions().size());
67 EXPECT_EQ(0u, registry.disabled_extensions().size()); 69 EXPECT_EQ(0u, registry.disabled_extensions().size());
68 EXPECT_EQ(0u, registry.terminated_extensions().size()); 70 EXPECT_EQ(0u, registry.terminated_extensions().size());
69 EXPECT_EQ(0u, registry.blacklisted_extensions().size()); 71 EXPECT_EQ(0u, registry.blacklisted_extensions().size());
(...skipping 13 matching lines...) Expand all
83 registry.ClearAll(); 85 registry.ClearAll();
84 86
85 EXPECT_EQ(0u, registry.enabled_extensions().size()); 87 EXPECT_EQ(0u, registry.enabled_extensions().size());
86 EXPECT_EQ(0u, registry.disabled_extensions().size()); 88 EXPECT_EQ(0u, registry.disabled_extensions().size());
87 EXPECT_EQ(0u, registry.terminated_extensions().size()); 89 EXPECT_EQ(0u, registry.terminated_extensions().size());
88 EXPECT_EQ(0u, registry.blacklisted_extensions().size()); 90 EXPECT_EQ(0u, registry.blacklisted_extensions().size());
89 } 91 }
90 92
91 // A simple test of adding and removing things from sets. 93 // A simple test of adding and removing things from sets.
92 TEST_F(ExtensionRegistryTest, AddAndRemoveExtensionFromRegistry) { 94 TEST_F(ExtensionRegistryTest, AddAndRemoveExtensionFromRegistry) {
93 ExtensionRegistry registry; 95 ExtensionRegistry registry(NULL);
94 96
95 // Adding an extension works. 97 // Adding an extension works.
96 scoped_refptr<Extension> extension = test_util::CreateExtensionWithID("id"); 98 scoped_refptr<Extension> extension = test_util::CreateExtensionWithID("id");
97 EXPECT_TRUE(registry.AddEnabled(extension)); 99 EXPECT_TRUE(registry.AddEnabled(extension));
98 EXPECT_EQ(1u, registry.enabled_extensions().size()); 100 EXPECT_EQ(1u, registry.enabled_extensions().size());
99 101
100 // The extension was only added to one set. 102 // The extension was only added to one set.
101 EXPECT_EQ(0u, registry.disabled_extensions().size()); 103 EXPECT_EQ(0u, registry.disabled_extensions().size());
102 EXPECT_EQ(0u, registry.terminated_extensions().size()); 104 EXPECT_EQ(0u, registry.terminated_extensions().size());
103 EXPECT_EQ(0u, registry.blacklisted_extensions().size()); 105 EXPECT_EQ(0u, registry.blacklisted_extensions().size());
104 106
105 // Removing an extension works. 107 // Removing an extension works.
106 EXPECT_TRUE(registry.RemoveEnabled(extension->id())); 108 EXPECT_TRUE(registry.RemoveEnabled(extension->id()));
107 EXPECT_EQ(0u, registry.enabled_extensions().size()); 109 EXPECT_EQ(0u, registry.enabled_extensions().size());
108 110
109 // Trying to remove an extension that isn't in the set fails cleanly. 111 // Trying to remove an extension that isn't in the set fails cleanly.
110 EXPECT_FALSE(registry.RemoveEnabled(extension->id())); 112 EXPECT_FALSE(registry.RemoveEnabled(extension->id()));
111 } 113 }
112 114
113 TEST_F(ExtensionRegistryTest, AddExtensionToRegistryTwice) { 115 TEST_F(ExtensionRegistryTest, AddExtensionToRegistryTwice) {
114 ExtensionRegistry registry; 116 ExtensionRegistry registry(NULL);
115 scoped_refptr<Extension> extension = test_util::CreateExtensionWithID("id"); 117 scoped_refptr<Extension> extension = test_util::CreateExtensionWithID("id");
116 118
117 // An extension can exist in two sets at once. It would be nice to eliminate 119 // An extension can exist in two sets at once. It would be nice to eliminate
118 // this functionality, but some users of ExtensionRegistry need it. 120 // this functionality, but some users of ExtensionRegistry need it.
119 EXPECT_TRUE(registry.AddEnabled(extension)); 121 EXPECT_TRUE(registry.AddEnabled(extension));
120 EXPECT_TRUE(registry.AddDisabled(extension)); 122 EXPECT_TRUE(registry.AddDisabled(extension));
121 123
122 EXPECT_EQ(1u, registry.enabled_extensions().size()); 124 EXPECT_EQ(1u, registry.enabled_extensions().size());
123 EXPECT_EQ(1u, registry.disabled_extensions().size()); 125 EXPECT_EQ(1u, registry.disabled_extensions().size());
124 EXPECT_EQ(0u, registry.terminated_extensions().size()); 126 EXPECT_EQ(0u, registry.terminated_extensions().size());
125 EXPECT_EQ(0u, registry.blacklisted_extensions().size()); 127 EXPECT_EQ(0u, registry.blacklisted_extensions().size());
126 } 128 }
127 129
128 TEST_F(ExtensionRegistryTest, GetExtensionById) { 130 TEST_F(ExtensionRegistryTest, GetExtensionById) {
129 ExtensionRegistry registry; 131 ExtensionRegistry registry(NULL);
130 132
131 // Trying to get an extension fails cleanly when the sets are empty. 133 // Trying to get an extension fails cleanly when the sets are empty.
132 EXPECT_FALSE( 134 EXPECT_FALSE(
133 registry.GetExtensionById("id", ExtensionRegistry::EVERYTHING)); 135 registry.GetExtensionById("id", ExtensionRegistry::EVERYTHING));
134 136
135 scoped_refptr<Extension> enabled = 137 scoped_refptr<Extension> enabled =
136 test_util::CreateExtensionWithID("enabled"); 138 test_util::CreateExtensionWithID("enabled");
137 scoped_refptr<Extension> disabled = 139 scoped_refptr<Extension> disabled =
138 test_util::CreateExtensionWithID("disabled"); 140 test_util::CreateExtensionWithID("disabled");
139 scoped_refptr<Extension> terminated = 141 scoped_refptr<Extension> terminated =
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after
198 // Enabled can be found with multiple flags set. 200 // Enabled can be found with multiple flags set.
199 EXPECT_TRUE(registry.GetExtensionById( 201 EXPECT_TRUE(registry.GetExtensionById(
200 "enabled", ExtensionRegistry::ENABLED | ExtensionRegistry::TERMINATED)); 202 "enabled", ExtensionRegistry::ENABLED | ExtensionRegistry::TERMINATED));
201 203
202 // Enabled isn't found if the wrong flags are set. 204 // Enabled isn't found if the wrong flags are set.
203 EXPECT_FALSE(registry.GetExtensionById( 205 EXPECT_FALSE(registry.GetExtensionById(
204 "enabled", ExtensionRegistry::DISABLED | ExtensionRegistry::BLACKLISTED)); 206 "enabled", ExtensionRegistry::DISABLED | ExtensionRegistry::BLACKLISTED));
205 } 207 }
206 208
207 TEST_F(ExtensionRegistryTest, Observer) { 209 TEST_F(ExtensionRegistryTest, Observer) {
208 ExtensionRegistry registry; 210 ExtensionRegistry registry(NULL);
209 TestObserver observer; 211 TestObserver observer;
210 registry.AddObserver(&observer); 212 registry.AddObserver(&observer);
211 213
212 EXPECT_TRUE(observer.loaded().empty()); 214 EXPECT_TRUE(observer.loaded().empty());
213 EXPECT_TRUE(observer.unloaded().empty()); 215 EXPECT_TRUE(observer.unloaded().empty());
214 216
215 scoped_refptr<const Extension> extension = 217 scoped_refptr<const Extension> extension =
216 test_util::CreateExtensionWithID("id"); 218 test_util::CreateExtensionWithID("id");
217 219
218 registry.AddEnabled(extension); 220 registry.AddEnabled(extension);
219 registry.TriggerOnLoaded(extension); 221 registry.TriggerOnLoaded(extension);
220 222
221 EXPECT_TRUE(HasSingleExtension(observer.loaded(), extension.get())); 223 EXPECT_TRUE(HasSingleExtension(observer.loaded(), extension.get()));
222 EXPECT_TRUE(observer.unloaded().empty()); 224 EXPECT_TRUE(observer.unloaded().empty());
223 observer.Reset(); 225 observer.Reset();
224 226
225 registry.RemoveEnabled(extension->id()); 227 registry.RemoveEnabled(extension->id());
226 registry.TriggerOnUnloaded(extension); 228 registry.TriggerOnUnloaded(extension);
227 229
228 EXPECT_TRUE(observer.loaded().empty()); 230 EXPECT_TRUE(observer.loaded().empty());
229 EXPECT_TRUE(HasSingleExtension(observer.unloaded(), extension.get())); 231 EXPECT_TRUE(HasSingleExtension(observer.unloaded(), extension.get()));
230 observer.Reset(); 232 observer.Reset();
231 233
232 registry.RemoveObserver(&observer); 234 registry.RemoveObserver(&observer);
233 } 235 }
234 236
235 } // namespace 237 } // namespace
236 } // namespace extensions 238 } // namespace extensions
OLDNEW
« no previous file with comments | « extensions/browser/extension_registry_observer.h ('k') | extensions/browser/runtime_data.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698