Chromium Code Reviews| Index: chrome/browser/ui/ash/launcher/chrome_launcher_controller_impl_unittest.cc |
| diff --git a/chrome/browser/ui/ash/launcher/chrome_launcher_controller_impl_unittest.cc b/chrome/browser/ui/ash/launcher/chrome_launcher_controller_impl_unittest.cc |
| index eba29f8ef775487526586b09fed439f3d0905fb4..94e1fc39a658f4c1ac29128b9a83d13a85781c31 100644 |
| --- a/chrome/browser/ui/ash/launcher/chrome_launcher_controller_impl_unittest.cc |
| +++ b/chrome/browser/ui/ash/launcher/chrome_launcher_controller_impl_unittest.cc |
| @@ -51,6 +51,7 @@ |
| #include "chrome/browser/ui/apps/chrome_app_delegate.h" |
| #include "chrome/browser/ui/ash/chrome_launcher_prefs.h" |
| #include "chrome/browser/ui/ash/launcher/app_window_launcher_controller.h" |
| +#include "chrome/browser/ui/ash/launcher/arc_app_deferred_launcher_controller.h" |
| #include "chrome/browser/ui/ash/launcher/browser_status_monitor.h" |
| #include "chrome/browser/ui/ash/launcher/chrome_launcher_controller_util.h" |
| #include "chrome/browser/ui/ash/launcher/extension_app_window_launcher_item_controller.h" |
| @@ -499,6 +500,7 @@ class ChromeLauncherControllerImplTest : public BrowserWithTestWindowTest { |
| launcher_controller_.reset( |
| new ChromeLauncherControllerImpl(profile(), model_.get())); |
| launcher_controller_->Init(); |
| + ChromeLauncherController::set_instance(launcher_controller_.get()); |
| } |
| void InitLauncherControllerWithBrowser() { |
| @@ -515,6 +517,7 @@ class ChromeLauncherControllerImplTest : public BrowserWithTestWindowTest { |
| launcher_controller_.reset( |
| ChromeLauncherControllerImpl::CreateInstance(profile(), model_.get())); |
| launcher_controller_->Init(); |
| + ChromeLauncherController::set_instance(launcher_controller_.get()); |
| } |
| void StartAppSyncService(const syncer::SyncDataList& init_sync_list) { |
| @@ -3545,6 +3548,58 @@ class ChromeLauncherControllerOrientationTest |
| DISALLOW_COPY_AND_ASSIGN(ChromeLauncherControllerOrientationTest); |
| }; |
| +class ChromeLauncherControllerArcDefaultAppsTest |
| + : public ChromeLauncherControllerImplTest { |
| + public: |
| + ChromeLauncherControllerArcDefaultAppsTest() {} |
| + ~ChromeLauncherControllerArcDefaultAppsTest() override {} |
| + |
| + protected: |
| + void SetUp() override { |
| + ArcAppListPrefs::UseTestDefaultAppsDirectory(); |
| + ChromeLauncherControllerImplTest::SetUp(); |
| + } |
| + |
| + void TestMe() { |
|
xiyuan
2016/08/26 19:32:30
nit: This function seems unnecessary if it is not
khmel
2016/08/26 23:26:18
Oh, forgot to move into TEST_F(ChromeLauncherContr
|
| + arc_test_.SetUp(profile()); |
| + InitLauncherController(); |
| + |
| + ArcAppListPrefs* const prefs = arc_test_.arc_app_list_prefs(); |
| + EnableArc(false); |
| + EXPECT_FALSE(arc_test_.arc_auth_service()->IsArcEnabled()); |
| + ASSERT_TRUE(prefs->GetAppIds().size()); |
| + |
| + const std::string app_id = |
| + ArcAppTest::GetAppId(arc_test_.fake_default_apps()[0]); |
| + EXPECT_EQ(0, launcher_controller_->GetShelfIDForAppID(app_id)); |
| + EXPECT_TRUE(arc::LaunchApp(profile(), app_id)); |
| + EXPECT_TRUE(arc_test_.arc_auth_service()->IsArcEnabled()); |
| + EXPECT_NE(0, launcher_controller_->GetShelfIDForAppID(app_id)); |
| + |
| + // Stop Arc again. Shelf item should go away. |
| + EnableArc(false); |
| + EXPECT_EQ(0, launcher_controller_->GetShelfIDForAppID(app_id)); |
| + |
| + EXPECT_TRUE(arc::LaunchApp(profile(), app_id)); |
| + EXPECT_TRUE(arc_test_.arc_auth_service()->IsArcEnabled()); |
| + |
| + EXPECT_NE(0, launcher_controller_->GetShelfIDForAppID(app_id)); |
| + EXPECT_TRUE(launcher_controller_->GetArcDeferredLauncher()->HasApp(app_id)); |
| + |
| + std::string window_app_id("org.chromium.arc.1"); |
| + CreateArcWindow(window_app_id); |
| + arc_test_.app_instance()->SendTaskCreated(1, |
| + arc_test_.fake_default_apps()[0]); |
| + |
| + EXPECT_NE(0, launcher_controller_->GetShelfIDForAppID(app_id)); |
| + EXPECT_FALSE( |
| + launcher_controller_->GetArcDeferredLauncher()->HasApp(app_id)); |
| + } |
| + |
| + private: |
| + DISALLOW_COPY_AND_ASSIGN(ChromeLauncherControllerArcDefaultAppsTest); |
| +}; |
| + |
| } // namespace |
| TEST_F(ChromeLauncherControllerOrientationTest, ArcOrientationLock) { |
| @@ -3708,3 +3763,7 @@ TEST_F(ChromeLauncherControllerOrientationTest, CurrentWithLandscapeDisplay) { |
| EXPECT_EQ(display::Display::ROTATE_0, |
| display::Screen::GetScreen()->GetPrimaryDisplay().rotation()); |
| } |
| + |
| +TEST_F(ChromeLauncherControllerArcDefaultAppsTest, DefaultApps) { |
| + TestMe(); |
| +} |