| Index: chrome/browser/ui/app_list/arc/arc_app_unittest.cc
|
| diff --git a/chrome/browser/ui/app_list/arc/arc_app_unittest.cc b/chrome/browser/ui/app_list/arc/arc_app_unittest.cc
|
| index 3c6b346a418305033a631efa6f8f555188bffb70..2949d61a404bb007d3d70113982cc1e839f43977 100644
|
| --- a/chrome/browser/ui/app_list/arc/arc_app_unittest.cc
|
| +++ b/chrome/browser/ui/app_list/arc/arc_app_unittest.cc
|
| @@ -383,10 +383,12 @@ class ArcAppModelBuilderTest : public extensions::ExtensionServiceTestBase,
|
|
|
| void AddPackage(const arc::mojom::ArcPackageInfo& package) {
|
| arc_test_.AddPackage(package);
|
| + app_instance()->SendPackageAdded(package);
|
| }
|
|
|
| void RemovePackage(const arc::mojom::ArcPackageInfo& package) {
|
| arc_test_.RemovePackage(package);
|
| + app_instance()->SendPackageUninstalled(package.package_name);
|
| }
|
|
|
| AppListControllerDelegate* controller() { return controller_.get(); }
|
| @@ -557,11 +559,9 @@ TEST_P(ArcAppModelBuilderTest, ArcPackagePref) {
|
| package.sync = true;
|
|
|
| RemovePackage(package);
|
| - app_instance()->SendPackageUninstalled(package.package_name);
|
| ValidateHavePackages(fake_packages());
|
|
|
| AddPackage(package);
|
| - app_instance()->SendPackageAdded(package);
|
| ValidateHavePackages(fake_packages());
|
| }
|
|
|
| @@ -586,13 +586,12 @@ TEST_P(ArcAppModelBuilderTest, InstallUninstallShortcut) {
|
| std::vector<arc::mojom::ShortcutInfo> shortcuts = fake_shortcuts();
|
| ASSERT_GE(shortcuts.size(), 2U);
|
|
|
| - // Adding package is requred to safely call SendPackageUninstalled.
|
| + // Adding package is required to safely call SendPackageUninstalled.
|
| arc::mojom::ArcPackageInfo package;
|
| package.package_name = shortcuts[1].package_name;
|
| package.package_version = 1;
|
| package.sync = true;
|
| AddPackage(package);
|
| - app_instance()->SendPackageAdded(package);
|
|
|
| app_instance()->SendInstallShortcuts(shortcuts);
|
| ValidateHaveShortcuts(shortcuts);
|
| @@ -1364,7 +1363,7 @@ TEST_P(ArcAppModelBuilderTest, NonLaunchableApp) {
|
| EXPECT_TRUE(prefs->IsRegistered(app_id));
|
| }
|
|
|
| -TEST_P(ArcAppModelBuilderTest, ArcAppsOnPackageUpdated) {
|
| +TEST_P(ArcAppModelBuilderTest, ArcAppsAndShortcutsOnPackageChange) {
|
| ArcAppListPrefs* prefs = ArcAppListPrefs::Get(profile_.get());
|
| ASSERT_NE(nullptr, prefs);
|
|
|
| @@ -1372,13 +1371,27 @@ TEST_P(ArcAppModelBuilderTest, ArcAppsOnPackageUpdated) {
|
| ASSERT_GE(3u, apps.size());
|
| apps[0].package_name = apps[2].package_name;
|
| apps[1].package_name = apps[2].package_name;
|
| +
|
| + std::vector<arc::mojom::ShortcutInfo> shortcuts = fake_shortcuts();
|
| + for (auto& shortcut : shortcuts)
|
| + shortcut.package_name = apps[0].package_name;
|
| +
|
| // Second app should be preserved after update.
|
| std::vector<arc::mojom::AppInfo> apps1(apps.begin(), apps.begin() + 2);
|
| std::vector<arc::mojom::AppInfo> apps2(apps.begin() + 1, apps.begin() + 3);
|
|
|
| + // Adding package is required to safely call SendPackageUninstalled.
|
| + arc::mojom::ArcPackageInfo package;
|
| + package.package_name = apps[0].package_name;
|
| + package.package_version = 1;
|
| + package.sync = true;
|
| + AddPackage(package);
|
| +
|
| app_instance()->RefreshAppList();
|
| app_instance()->SendRefreshAppList(apps1);
|
| - ValidateHaveApps(apps1);
|
| + app_instance()->SendInstallShortcuts(shortcuts);
|
| +
|
| + ValidateHaveAppsAndShortcuts(apps1, shortcuts);
|
|
|
| const std::string app_id = ArcAppTest::GetAppId(apps[1]);
|
| const base::Time now_time = base::Time::Now();
|
| @@ -1389,12 +1402,16 @@ TEST_P(ArcAppModelBuilderTest, ArcAppsOnPackageUpdated) {
|
| EXPECT_EQ(now_time, app_info_before->last_launch_time);
|
|
|
| app_instance()->SendPackageAppListRefreshed(apps[0].package_name, apps2);
|
| - ValidateHaveApps(apps2);
|
| + ValidateHaveAppsAndShortcuts(apps2, shortcuts);
|
|
|
| std::unique_ptr<ArcAppListPrefs::AppInfo> app_info_after =
|
| prefs->GetApp(app_id);
|
| ASSERT_TRUE(app_info_after);
|
| EXPECT_EQ(now_time, app_info_after->last_launch_time);
|
| +
|
| + RemovePackage(package);
|
| + ValidateHaveAppsAndShortcuts(std::vector<arc::mojom::AppInfo>(),
|
| + std::vector<arc::mojom::ShortcutInfo>());
|
| }
|
|
|
| TEST_P(ArcDefaulAppTest, DefaultApps) {
|
|
|