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

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

Issue 2281743002: arc: Add support of default and OEM apps. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: refactored Created 4 years, 3 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 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_impl.h" 5 #include "chrome/browser/ui/ash/launcher/chrome_launcher_controller_impl.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 8
9 #include <algorithm> 9 #include <algorithm>
10 #include <map> 10 #include <map>
(...skipping 30 matching lines...) Expand all
41 #include "chrome/browser/chromeos/login/users/fake_chrome_user_manager.h" 41 #include "chrome/browser/chromeos/login/users/fake_chrome_user_manager.h"
42 #include "chrome/browser/chromeos/login/users/scoped_user_manager_enabler.h" 42 #include "chrome/browser/chromeos/login/users/scoped_user_manager_enabler.h"
43 #include "chrome/browser/chromeos/login/users/wallpaper/wallpaper_manager.h" 43 #include "chrome/browser/chromeos/login/users/wallpaper/wallpaper_manager.h"
44 #include "chrome/browser/extensions/extension_service.h" 44 #include "chrome/browser/extensions/extension_service.h"
45 #include "chrome/browser/extensions/test_extension_system.h" 45 #include "chrome/browser/extensions/test_extension_system.h"
46 #include "chrome/browser/lifetime/scoped_keep_alive.h" 46 #include "chrome/browser/lifetime/scoped_keep_alive.h"
47 #include "chrome/browser/ui/app_list/app_list_syncable_service_factory.h" 47 #include "chrome/browser/ui/app_list/app_list_syncable_service_factory.h"
48 #include "chrome/browser/ui/app_list/arc/arc_app_list_prefs.h" 48 #include "chrome/browser/ui/app_list/arc/arc_app_list_prefs.h"
49 #include "chrome/browser/ui/app_list/arc/arc_app_test.h" 49 #include "chrome/browser/ui/app_list/arc/arc_app_test.h"
50 #include "chrome/browser/ui/app_list/arc/arc_app_utils.h" 50 #include "chrome/browser/ui/app_list/arc/arc_app_utils.h"
51 #include "chrome/browser/ui/app_list/arc/arc_default_app_list.h"
51 #include "chrome/browser/ui/apps/chrome_app_delegate.h" 52 #include "chrome/browser/ui/apps/chrome_app_delegate.h"
52 #include "chrome/browser/ui/ash/chrome_launcher_prefs.h" 53 #include "chrome/browser/ui/ash/chrome_launcher_prefs.h"
53 #include "chrome/browser/ui/ash/launcher/app_window_launcher_controller.h" 54 #include "chrome/browser/ui/ash/launcher/app_window_launcher_controller.h"
55 #include "chrome/browser/ui/ash/launcher/arc_app_deferred_launcher_controller.h"
54 #include "chrome/browser/ui/ash/launcher/browser_status_monitor.h" 56 #include "chrome/browser/ui/ash/launcher/browser_status_monitor.h"
55 #include "chrome/browser/ui/ash/launcher/chrome_launcher_controller_util.h" 57 #include "chrome/browser/ui/ash/launcher/chrome_launcher_controller_util.h"
56 #include "chrome/browser/ui/ash/launcher/extension_app_window_launcher_item_cont roller.h" 58 #include "chrome/browser/ui/ash/launcher/extension_app_window_launcher_item_cont roller.h"
57 #include "chrome/browser/ui/ash/launcher/launcher_application_menu_item_model.h" 59 #include "chrome/browser/ui/ash/launcher/launcher_application_menu_item_model.h"
58 #include "chrome/browser/ui/ash/launcher/launcher_controller_helper.h" 60 #include "chrome/browser/ui/ash/launcher/launcher_controller_helper.h"
59 #include "chrome/browser/ui/ash/launcher/launcher_item_controller.h" 61 #include "chrome/browser/ui/ash/launcher/launcher_item_controller.h"
60 #include "chrome/browser/ui/ash/multi_user/multi_user_util.h" 62 #include "chrome/browser/ui/ash/multi_user/multi_user_util.h"
61 #include "chrome/browser/ui/ash/multi_user/multi_user_window_manager.h" 63 #include "chrome/browser/ui/ash/multi_user/multi_user_window_manager.h"
62 #include "chrome/browser/ui/ash/multi_user/multi_user_window_manager_chromeos.h" 64 #include "chrome/browser/ui/ash/multi_user/multi_user_window_manager_chromeos.h"
63 #include "chrome/browser/ui/browser.h" 65 #include "chrome/browser/ui/browser.h"
(...skipping 3474 matching lines...) Expand 10 before | Expand all | Expand 10 after
3538 3540
3539 views::Widget* window_none_ = nullptr; 3541 views::Widget* window_none_ = nullptr;
3540 views::Widget* window_landscape_ = nullptr; 3542 views::Widget* window_landscape_ = nullptr;
3541 views::Widget* window_portrait_ = nullptr; 3543 views::Widget* window_portrait_ = nullptr;
3542 views::Widget* window_current_ = nullptr; 3544 views::Widget* window_current_ = nullptr;
3543 3545
3544 private: 3546 private:
3545 DISALLOW_COPY_AND_ASSIGN(ChromeLauncherControllerOrientationTest); 3547 DISALLOW_COPY_AND_ASSIGN(ChromeLauncherControllerOrientationTest);
3546 }; 3548 };
3547 3549
3550 class ChromeLauncherControllerArcDefaultAppsTest
3551 : public ChromeLauncherControllerImplTest {
3552 public:
3553 ChromeLauncherControllerArcDefaultAppsTest() {}
3554 ~ChromeLauncherControllerArcDefaultAppsTest() override {}
3555
3556 protected:
3557 void SetUp() override {
3558 ArcDefaultAppList::UseTestAppsDirectory();
3559 ChromeLauncherControllerImplTest::SetUp();
3560 }
3561
3562 private:
3563 DISALLOW_COPY_AND_ASSIGN(ChromeLauncherControllerArcDefaultAppsTest);
3564 };
3565
3548 } // namespace 3566 } // namespace
3549 3567
3550 TEST_F(ChromeLauncherControllerOrientationTest, ArcOrientationLock) { 3568 TEST_F(ChromeLauncherControllerOrientationTest, ArcOrientationLock) {
3551 ASSERT_TRUE(display::Display::HasInternalDisplay()); 3569 ASSERT_TRUE(display::Display::HasInternalDisplay());
3552 3570
3553 extension_service_->AddExtension(arc_support_host_.get()); 3571 extension_service_->AddExtension(arc_support_host_.get());
3554 arc_test_.SetUp(profile()); 3572 arc_test_.SetUp(profile());
3555 EnableArc(true); 3573 EnableArc(true);
3556 EnableTabletMode(true); 3574 EnableTabletMode(true);
3557 3575
(...skipping 143 matching lines...) Expand 10 before | Expand all | Expand 10 after
3701 EXPECT_FALSE(controller->rotation_locked()); 3719 EXPECT_FALSE(controller->rotation_locked());
3702 EXPECT_EQ(display::Display::ROTATE_0, 3720 EXPECT_EQ(display::Display::ROTATE_0,
3703 display::Screen::GetScreen()->GetPrimaryDisplay().rotation()); 3721 display::Screen::GetScreen()->GetPrimaryDisplay().rotation());
3704 3722
3705 NotifyOnTaskOrientationLockRequested(task_id_current_, 3723 NotifyOnTaskOrientationLockRequested(task_id_current_,
3706 OrientationLock::CURRENT); 3724 OrientationLock::CURRENT);
3707 EXPECT_TRUE(controller->rotation_locked()); 3725 EXPECT_TRUE(controller->rotation_locked());
3708 EXPECT_EQ(display::Display::ROTATE_0, 3726 EXPECT_EQ(display::Display::ROTATE_0,
3709 display::Screen::GetScreen()->GetPrimaryDisplay().rotation()); 3727 display::Screen::GetScreen()->GetPrimaryDisplay().rotation());
3710 } 3728 }
3729
3730 TEST_F(ChromeLauncherControllerArcDefaultAppsTest, DefaultApps) {
3731 arc_test_.SetUp(profile());
3732 InitLauncherController();
3733 ChromeLauncherController::set_instance(launcher_controller_.get());
3734
3735 ArcAppListPrefs* const prefs = arc_test_.arc_app_list_prefs();
3736 EnableArc(false);
3737 EXPECT_FALSE(arc_test_.arc_auth_service()->IsArcEnabled());
3738 ASSERT_TRUE(prefs->GetAppIds().size());
3739
3740 const std::string app_id =
3741 ArcAppTest::GetAppId(arc_test_.fake_default_apps()[0]);
3742 EXPECT_EQ(0, launcher_controller_->GetShelfIDForAppID(app_id));
3743 EXPECT_TRUE(arc::LaunchApp(profile(), app_id));
3744 EXPECT_TRUE(arc_test_.arc_auth_service()->IsArcEnabled());
3745 EXPECT_NE(0, launcher_controller_->GetShelfIDForAppID(app_id));
3746
3747 // Stop Arc again. Shelf item should go away.
3748 EnableArc(false);
3749 EXPECT_EQ(0, launcher_controller_->GetShelfIDForAppID(app_id));
3750
3751 EXPECT_TRUE(arc::LaunchApp(profile(), app_id));
3752 EXPECT_TRUE(arc_test_.arc_auth_service()->IsArcEnabled());
3753
3754 EXPECT_NE(0, launcher_controller_->GetShelfIDForAppID(app_id));
3755 EXPECT_TRUE(launcher_controller_->GetArcDeferredLauncher()->HasApp(app_id));
3756
3757 std::string window_app_id("org.chromium.arc.1");
3758 CreateArcWindow(window_app_id);
3759 arc_test_.app_instance()->SendTaskCreated(1,
3760 arc_test_.fake_default_apps()[0]);
3761
3762 EXPECT_NE(0, launcher_controller_->GetShelfIDForAppID(app_id));
3763 EXPECT_FALSE(launcher_controller_->GetArcDeferredLauncher()->HasApp(app_id));
3764 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698