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

Side by Side Diff: chrome/browser/ui/ash/launcher/chrome_launcher_controller_unittest.cc

Issue 686563002: Standardize usage of virtual/override/final specifiers. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase Created 6 years, 1 month 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 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 "chrome/browser/ui/ash/launcher/chrome_launcher_controller.h" 5 #include "chrome/browser/ui/ash/launcher/chrome_launcher_controller.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <string> 8 #include <string>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after
87 87
88 // ShelfModelObserver implementation that tracks what messages are invoked. 88 // ShelfModelObserver implementation that tracks what messages are invoked.
89 class TestShelfModelObserver : public ash::ShelfModelObserver { 89 class TestShelfModelObserver : public ash::ShelfModelObserver {
90 public: 90 public:
91 TestShelfModelObserver() 91 TestShelfModelObserver()
92 : added_(0), 92 : added_(0),
93 removed_(0), 93 removed_(0),
94 changed_(0) { 94 changed_(0) {
95 } 95 }
96 96
97 virtual ~TestShelfModelObserver() { 97 ~TestShelfModelObserver() override {}
98 }
99 98
100 // Overridden from ash::ShelfModelObserver: 99 // Overridden from ash::ShelfModelObserver:
101 virtual void ShelfItemAdded(int index) override { 100 void ShelfItemAdded(int index) override {
102 ++added_; 101 ++added_;
103 last_index_ = index; 102 last_index_ = index;
104 } 103 }
105 104
106 virtual void ShelfItemRemoved(int index, ash::ShelfID id) override { 105 void ShelfItemRemoved(int index, ash::ShelfID id) override {
107 ++removed_; 106 ++removed_;
108 last_index_ = index; 107 last_index_ = index;
109 } 108 }
110 109
111 virtual void ShelfItemChanged(int index, 110 void ShelfItemChanged(int index, const ash::ShelfItem& old_item) override {
112 const ash::ShelfItem& old_item) override {
113 ++changed_; 111 ++changed_;
114 last_index_ = index; 112 last_index_ = index;
115 } 113 }
116 114
117 virtual void ShelfItemMoved(int start_index, int target_index) override { 115 void ShelfItemMoved(int start_index, int target_index) override {
118 last_index_ = target_index; 116 last_index_ = target_index;
119 } 117 }
120 118
121 virtual void ShelfStatusChanged() override { 119 void ShelfStatusChanged() override {}
122 }
123 120
124 void clear_counts() { 121 void clear_counts() {
125 added_ = 0; 122 added_ = 0;
126 removed_ = 0; 123 removed_ = 0;
127 changed_ = 0; 124 changed_ = 0;
128 last_index_ = 0; 125 last_index_ = 0;
129 } 126 }
130 127
131 int added() const { return added_; } 128 int added() const { return added_; }
132 int removed() const { return removed_; } 129 int removed() const { return removed_; }
133 int changed() const { return changed_; } 130 int changed() const { return changed_; }
134 int last_index() const { return last_index_; } 131 int last_index() const { return last_index_; }
135 132
136 private: 133 private:
137 int added_; 134 int added_;
138 int removed_; 135 int removed_;
139 int changed_; 136 int changed_;
140 int last_index_; 137 int last_index_;
141 138
142 DISALLOW_COPY_AND_ASSIGN(TestShelfModelObserver); 139 DISALLOW_COPY_AND_ASSIGN(TestShelfModelObserver);
143 }; 140 };
144 141
145 // Test implementation of AppIconLoader. 142 // Test implementation of AppIconLoader.
146 class TestAppIconLoaderImpl : public extensions::AppIconLoader { 143 class TestAppIconLoaderImpl : public extensions::AppIconLoader {
147 public: 144 public:
148 TestAppIconLoaderImpl() : fetch_count_(0) { 145 TestAppIconLoaderImpl() : fetch_count_(0) {
149 } 146 }
150 147
151 virtual ~TestAppIconLoaderImpl() { 148 ~TestAppIconLoaderImpl() override {}
152 }
153 149
154 // AppIconLoader implementation: 150 // AppIconLoader implementation:
155 virtual void FetchImage(const std::string& id) override { 151 void FetchImage(const std::string& id) override { ++fetch_count_; }
156 ++fetch_count_;
157 }
158 152
159 virtual void ClearImage(const std::string& id) override { 153 void ClearImage(const std::string& id) override {}
160 }
161 154
162 virtual void UpdateImage(const std::string& id) override { 155 void UpdateImage(const std::string& id) override {}
163 }
164 156
165 int fetch_count() const { return fetch_count_; } 157 int fetch_count() const { return fetch_count_; }
166 158
167 private: 159 private:
168 int fetch_count_; 160 int fetch_count_;
169 161
170 DISALLOW_COPY_AND_ASSIGN(TestAppIconLoaderImpl); 162 DISALLOW_COPY_AND_ASSIGN(TestAppIconLoaderImpl);
171 }; 163 };
172 164
173 // Test implementation of AppTabHelper. 165 // Test implementation of AppTabHelper.
174 class TestAppTabHelperImpl : public ChromeLauncherController::AppTabHelper { 166 class TestAppTabHelperImpl : public ChromeLauncherController::AppTabHelper {
175 public: 167 public:
176 TestAppTabHelperImpl() {} 168 TestAppTabHelperImpl() {}
177 virtual ~TestAppTabHelperImpl() {} 169 ~TestAppTabHelperImpl() override {}
178 170
179 // Sets the id for the specified tab. The id is removed if Remove() is 171 // Sets the id for the specified tab. The id is removed if Remove() is
180 // invoked. 172 // invoked.
181 void SetAppID(content::WebContents* tab, const std::string& id) { 173 void SetAppID(content::WebContents* tab, const std::string& id) {
182 tab_id_map_[tab] = id; 174 tab_id_map_[tab] = id;
183 } 175 }
184 176
185 // Returns true if there is an id registered for |tab|. 177 // Returns true if there is an id registered for |tab|.
186 bool HasAppID(content::WebContents* tab) const { 178 bool HasAppID(content::WebContents* tab) const {
187 return tab_id_map_.find(tab) != tab_id_map_.end(); 179 return tab_id_map_.find(tab) != tab_id_map_.end();
188 } 180 }
189 181
190 // AppTabHelper implementation: 182 // AppTabHelper implementation:
191 virtual std::string GetAppID(content::WebContents* tab) override { 183 std::string GetAppID(content::WebContents* tab) override {
192 return tab_id_map_.find(tab) != tab_id_map_.end() ? tab_id_map_[tab] : 184 return tab_id_map_.find(tab) != tab_id_map_.end() ? tab_id_map_[tab] :
193 std::string(); 185 std::string();
194 } 186 }
195 187
196 virtual bool IsValidIDForCurrentUser(const std::string& id) override { 188 bool IsValidIDForCurrentUser(const std::string& id) override {
197 for (TabToStringMap::const_iterator i = tab_id_map_.begin(); 189 for (TabToStringMap::const_iterator i = tab_id_map_.begin();
198 i != tab_id_map_.end(); ++i) { 190 i != tab_id_map_.end(); ++i) {
199 if (i->second == id) 191 if (i->second == id)
200 return true; 192 return true;
201 } 193 }
202 return false; 194 return false;
203 } 195 }
204 196
205 virtual void SetCurrentUser(Profile* profile) override { 197 void SetCurrentUser(Profile* profile) override {
206 // We can ignore this for now. 198 // We can ignore this for now.
207 } 199 }
208 200
209 private: 201 private:
210 typedef std::map<content::WebContents*, std::string> TabToStringMap; 202 typedef std::map<content::WebContents*, std::string> TabToStringMap;
211 203
212 TabToStringMap tab_id_map_; 204 TabToStringMap tab_id_map_;
213 205
214 DISALLOW_COPY_AND_ASSIGN(TestAppTabHelperImpl); 206 DISALLOW_COPY_AND_ASSIGN(TestAppTabHelperImpl);
215 }; 207 };
216 208
217 // Test implementation of a V2 app launcher item controller. 209 // Test implementation of a V2 app launcher item controller.
218 class TestV2AppLauncherItemController : public LauncherItemController { 210 class TestV2AppLauncherItemController : public LauncherItemController {
219 public: 211 public:
220 TestV2AppLauncherItemController(const std::string& app_id, 212 TestV2AppLauncherItemController(const std::string& app_id,
221 ChromeLauncherController* controller) 213 ChromeLauncherController* controller)
222 : LauncherItemController(LauncherItemController::TYPE_APP, 214 : LauncherItemController(LauncherItemController::TYPE_APP,
223 app_id, 215 app_id,
224 controller) { 216 controller) {
225 } 217 }
226 218
227 virtual ~TestV2AppLauncherItemController() {} 219 ~TestV2AppLauncherItemController() override {}
228 220
229 // Override for LauncherItemController: 221 // Override for LauncherItemController:
230 virtual bool IsOpen() const override { return true; } 222 bool IsOpen() const override { return true; }
231 virtual bool IsVisible() const override { return true; } 223 bool IsVisible() const override { return true; }
232 virtual void Launch(ash::LaunchSource source, int event_flags) override {} 224 void Launch(ash::LaunchSource source, int event_flags) override {}
233 virtual bool Activate(ash::LaunchSource source) override { return false; } 225 bool Activate(ash::LaunchSource source) override { return false; }
234 virtual void Close() override {} 226 void Close() override {}
235 virtual bool ItemSelected(const ui::Event& event) override { return false; } 227 bool ItemSelected(const ui::Event& event) override { return false; }
236 virtual base::string16 GetTitle() override { return base::string16(); } 228 base::string16 GetTitle() override { return base::string16(); }
237 virtual ChromeLauncherAppMenuItems GetApplicationList( 229 ChromeLauncherAppMenuItems GetApplicationList(int event_flags) override {
238 int event_flags) override {
239 ChromeLauncherAppMenuItems items; 230 ChromeLauncherAppMenuItems items;
240 items.push_back( 231 items.push_back(
241 new ChromeLauncherAppMenuItem(base::string16(), NULL, false)); 232 new ChromeLauncherAppMenuItem(base::string16(), NULL, false));
242 items.push_back( 233 items.push_back(
243 new ChromeLauncherAppMenuItem(base::string16(), NULL, false)); 234 new ChromeLauncherAppMenuItem(base::string16(), NULL, false));
244 return items.Pass(); 235 return items.Pass();
245 } 236 }
246 virtual ui::MenuModel* CreateContextMenu(aura::Window* root_window) override { 237 ui::MenuModel* CreateContextMenu(aura::Window* root_window) override {
247 return NULL; 238 return NULL;
248 } 239 }
249 virtual ash::ShelfMenuModel* CreateApplicationMenu(int event_flags) override { 240 ash::ShelfMenuModel* CreateApplicationMenu(int event_flags) override {
250 return NULL; 241 return NULL;
251 } 242 }
252 virtual bool IsDraggable() override { return false; } 243 bool IsDraggable() override { return false; }
253 virtual bool ShouldShowTooltip() override { return false; } 244 bool ShouldShowTooltip() override { return false; }
254 245
255 private: 246 private:
256 DISALLOW_COPY_AND_ASSIGN(TestV2AppLauncherItemController); 247 DISALLOW_COPY_AND_ASSIGN(TestV2AppLauncherItemController);
257 }; 248 };
258 249
259 } // namespace 250 } // namespace
260 251
261 class ChromeLauncherControllerTest : public BrowserWithTestWindowTest { 252 class ChromeLauncherControllerTest : public BrowserWithTestWindowTest {
262 protected: 253 protected:
263 ChromeLauncherControllerTest() 254 ChromeLauncherControllerTest()
264 : BrowserWithTestWindowTest( 255 : BrowserWithTestWindowTest(
265 Browser::TYPE_TABBED, 256 Browser::TYPE_TABBED,
266 chrome::HOST_DESKTOP_TYPE_ASH, 257 chrome::HOST_DESKTOP_TYPE_ASH,
267 false), 258 false),
268 test_controller_(NULL), 259 test_controller_(NULL),
269 extension_service_(NULL) { 260 extension_service_(NULL) {
270 } 261 }
271 262
272 virtual ~ChromeLauncherControllerTest() { 263 ~ChromeLauncherControllerTest() override {}
273 }
274 264
275 virtual void SetUp() override { 265 void SetUp() override {
276 BrowserWithTestWindowTest::SetUp(); 266 BrowserWithTestWindowTest::SetUp();
277 267
278 model_.reset(new ash::ShelfModel); 268 model_.reset(new ash::ShelfModel);
279 model_observer_.reset(new TestShelfModelObserver); 269 model_observer_.reset(new TestShelfModelObserver);
280 model_->AddObserver(model_observer_.get()); 270 model_->AddObserver(model_observer_.get());
281 271
282 if (ash::Shell::HasInstance()) { 272 if (ash::Shell::HasInstance()) {
283 item_delegate_manager_ = 273 item_delegate_manager_ =
284 ash::Shell::GetInstance()->shelf_item_delegate_manager(); 274 ash::Shell::GetInstance()->shelf_item_delegate_manager();
285 } else { 275 } else {
(...skipping 118 matching lines...) Expand 10 before | Expand all | Expand 10 after
404 InsertPrefValue(user_a, 2, extension3_->id()); 394 InsertPrefValue(user_a, 2, extension3_->id());
405 InsertPrefValue(user_a, 3, extension4_->id()); 395 InsertPrefValue(user_a, 3, extension4_->id());
406 InsertPrefValue(user_a, 4, extension5_->id()); 396 InsertPrefValue(user_a, 4, extension5_->id());
407 InsertPrefValue(user_a, 5, extension6_->id()); 397 InsertPrefValue(user_a, 5, extension6_->id());
408 398
409 // Set user b preferences. 399 // Set user b preferences.
410 InsertPrefValue(user_b, 0, extension7_->id()); 400 InsertPrefValue(user_b, 0, extension7_->id());
411 InsertPrefValue(user_b, 1, extension8_->id()); 401 InsertPrefValue(user_b, 1, extension8_->id());
412 } 402 }
413 403
414 virtual void TearDown() override { 404 void TearDown() override {
415 if (!ash::Shell::HasInstance()) 405 if (!ash::Shell::HasInstance())
416 delete item_delegate_manager_; 406 delete item_delegate_manager_;
417 model_->RemoveObserver(model_observer_.get()); 407 model_->RemoveObserver(model_observer_.get());
418 model_observer_.reset(); 408 model_observer_.reset();
419 launcher_controller_.reset(); 409 launcher_controller_.reset();
420 model_.reset(); 410 model_.reset();
421 411
422 BrowserWithTestWindowTest::TearDown(); 412 BrowserWithTestWindowTest::TearDown();
423 } 413 }
424 414
(...skipping 2261 matching lines...) Expand 10 before | Expand all | Expand 10 after
2686 2676
2687 EXPECT_EQ(1, app_icon_loader->fetch_count()); 2677 EXPECT_EQ(1, app_icon_loader->fetch_count());
2688 ASSERT_EQ(initial_size + 1, model_->items().size()); 2678 ASSERT_EQ(initial_size + 1, model_->items().size());
2689 EXPECT_TRUE(launcher_controller_->IsAppPinned("1")); 2679 EXPECT_TRUE(launcher_controller_->IsAppPinned("1"));
2690 EXPECT_FALSE(launcher_controller_->IsAppPinned("0")); 2680 EXPECT_FALSE(launcher_controller_->IsAppPinned("0"));
2691 EXPECT_EQ(ash::TYPE_APP_SHORTCUT, model_->items()[app_index].type); 2681 EXPECT_EQ(ash::TYPE_APP_SHORTCUT, model_->items()[app_index].type);
2692 2682
2693 launcher_controller_->UnpinAppWithID("1"); 2683 launcher_controller_->UnpinAppWithID("1");
2694 ASSERT_EQ(initial_size, model_->items().size()); 2684 ASSERT_EQ(initial_size, model_->items().size());
2695 } 2685 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698