| Index: chrome/browser/background/background_mode_manager_unittest.cc
 | 
| diff --git a/chrome/browser/background/background_mode_manager_unittest.cc b/chrome/browser/background/background_mode_manager_unittest.cc
 | 
| index 2f222f1c78345474de3680b6115a39dfbb21e28a..42281facb141f0d028fea9e98285e4715e3258b2 100644
 | 
| --- a/chrome/browser/background/background_mode_manager_unittest.cc
 | 
| +++ b/chrome/browser/background/background_mode_manager_unittest.cc
 | 
| @@ -38,7 +38,9 @@ class TestBackgroundModeManager : public BackgroundModeManager {
 | 
|          app_count_(0),
 | 
|          profile_app_count_(0),
 | 
|          have_status_tray_(false),
 | 
| -        launch_on_startup_(false) {}
 | 
| +        launch_on_startup_(false) {
 | 
| +    ResumeBackgroundMode();
 | 
| +  }
 | 
|    virtual void EnableLaunchOnStartup(bool launch) OVERRIDE {
 | 
|      launch_on_startup_ = launch;
 | 
|    }
 | 
| @@ -84,6 +86,13 @@ static void AssertBackgroundModeInactive(
 | 
|    EXPECT_FALSE(manager.IsLaunchOnStartup());
 | 
|  }
 | 
|  
 | 
| +static void AssertBackgroundModeSuspended(
 | 
| +    const TestBackgroundModeManager& manager) {
 | 
| +  EXPECT_FALSE(chrome::WillKeepAlive());
 | 
| +  EXPECT_FALSE(manager.HaveStatusTray());
 | 
| +  EXPECT_TRUE(manager.IsLaunchOnStartup());
 | 
| +}
 | 
| +
 | 
|  TEST_F(BackgroundModeManagerTest, BackgroundAppLoadUnload) {
 | 
|    TestingProfile* profile = profile_manager_.CreateTestingProfile("p1");
 | 
|    TestBackgroundModeManager manager(
 | 
| @@ -97,10 +106,24 @@ TEST_F(BackgroundModeManagerTest, BackgroundAppLoadUnload) {
 | 
|    manager.OnApplicationListChanged(profile);
 | 
|    AssertBackgroundModeActive(manager);
 | 
|  
 | 
| +  manager.SuspendBackgroundMode();
 | 
| +  AssertBackgroundModeSuspended(manager);
 | 
| +  manager.ResumeBackgroundMode();
 | 
| +
 | 
|    // Mimic app unload.
 | 
|    manager.SetBackgroundAppCount(0);
 | 
|    manager.OnApplicationListChanged(profile);
 | 
|    AssertBackgroundModeInactive(manager);
 | 
| +
 | 
| +  manager.SuspendBackgroundMode();
 | 
| +  AssertBackgroundModeInactive(manager);
 | 
| +
 | 
| +  // Mimic app load while suspended, e.g. from sync. This should enable and
 | 
| +  // resume background mode.
 | 
| +  manager.OnBackgroundAppInstalled(NULL);
 | 
| +  manager.SetBackgroundAppCount(1);
 | 
| +  manager.OnApplicationListChanged(profile);
 | 
| +  AssertBackgroundModeActive(manager);
 | 
|  }
 | 
|  
 | 
|  // App installs while background mode is disabled should do nothing.
 | 
| 
 |