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

Side by Side Diff: chrome/browser/background/background_mode_manager_unittest.cc

Issue 1931503002: Add BackgroundModeOptimizer that can restart the browser (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@PushKeepAlive
Patch Set: address comments. disable feature by default Created 4 years, 4 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) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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/background/background_mode_manager.h" 5 #include "chrome/browser/background/background_mode_manager.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 8
9 #include <memory> 9 #include <memory>
10 #include <string> 10 #include <string>
(...skipping 243 matching lines...) Expand 10 before | Expand all | Expand 10 after
254 // Deleting our testing profile may have the side-effect of disabling 254 // Deleting our testing profile may have the side-effect of disabling
255 // background mode if it was enabled for that profile (explicitly note that 255 // background mode if it was enabled for that profile (explicitly note that
256 // here to satisfy StrictMock requirements. 256 // here to satisfy StrictMock requirements.
257 EXPECT_CALL(*manager_, EnableLaunchOnStartup(false)).Times(AtMost(1)); 257 EXPECT_CALL(*manager_, EnableLaunchOnStartup(false)).Times(AtMost(1));
258 profile_manager_->DeleteAllTestingProfiles(); 258 profile_manager_->DeleteAllTestingProfiles();
259 Mock::VerifyAndClearExpectations(manager_.get()); 259 Mock::VerifyAndClearExpectations(manager_.get());
260 260
261 // We're getting ready to shutdown the message loop. Clear everything out! 261 // We're getting ready to shutdown the message loop. Clear everything out!
262 base::RunLoop().RunUntilIdle(); 262 base::RunLoop().RunUntilIdle();
263 263
264 test_keep_alive_.reset();
265
266 // TestBackgroundModeManager has dependencies on the infrastructure. 264 // TestBackgroundModeManager has dependencies on the infrastructure.
267 // It should get cleared first. 265 // It should get cleared first.
268 manager_.reset(); 266 manager_.reset();
269 267
268 // Now that the background manager is destroyed, the test KeepAlive can be
269 // cleared without having |manager_| attempt to perform optimizations.
270 test_keep_alive_.reset();
271
270 // The Profile Manager references the Browser Process. 272 // The Profile Manager references the Browser Process.
271 // The Browser Process references the Notification UI Manager. 273 // The Browser Process references the Notification UI Manager.
272 // The Notification UI Manager references the Message Center. 274 // The Notification UI Manager references the Message Center.
273 // As a result, we have to clear the browser process state here 275 // As a result, we have to clear the browser process state here
274 // before tearing down the Message Center. 276 // before tearing down the Message Center.
275 profile_manager_.reset(); 277 profile_manager_.reset();
276 278
277 // Message Center shutdown must occur after the KeepAlive is released 279 // Message Center shutdown must occur after the KeepAlive is released
278 // because clearing it will end up referencing the message center. 280 // because clearing it will end up referencing the message center.
279 message_center::MessageCenter::Shutdown(); 281 message_center::MessageCenter::Shutdown();
(...skipping 739 matching lines...) Expand 10 before | Expand all | Expand 10 after
1019 // When the background mode pref is enabled and there are pending triggers 1021 // When the background mode pref is enabled and there are pending triggers
1020 // they will be registered and the user will be notified. 1022 // they will be registered and the user will be notified.
1021 EXPECT_CALL(manager, EnableLaunchOnStartup(true)); 1023 EXPECT_CALL(manager, EnableLaunchOnStartup(true));
1022 g_browser_process->local_state()->SetBoolean(prefs::kBackgroundModeEnabled, 1024 g_browser_process->local_state()->SetBoolean(prefs::kBackgroundModeEnabled,
1023 true); 1025 true);
1024 Mock::VerifyAndClearExpectations(&manager); 1026 Mock::VerifyAndClearExpectations(&manager);
1025 ASSERT_EQ(1, manager.GetBackgroundClientCountForProfile(profile_)); 1027 ASSERT_EQ(1, manager.GetBackgroundClientCountForProfile(profile_));
1026 AssertBackgroundModeActive(manager); 1028 AssertBackgroundModeActive(manager);
1027 ASSERT_TRUE(manager.HasShownBalloon()); 1029 ASSERT_TRUE(manager.HasShownBalloon());
1028 } 1030 }
OLDNEW
« no previous file with comments | « chrome/browser/background/background_mode_manager.cc ('k') | chrome/browser/background/background_mode_optimizer.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698