| Index: chrome/browser/ui/app_list/app_list_service_interactive_uitest.cc
|
| diff --git a/chrome/browser/ui/app_list/app_list_service_interactive_uitest.cc b/chrome/browser/ui/app_list/app_list_service_interactive_uitest.cc
|
| index a7ec4610b908870451ae0826a512b49ef05a10c8..51ca08f9336fb09333b39bb9fc982f029ac6ca72 100644
|
| --- a/chrome/browser/ui/app_list/app_list_service_interactive_uitest.cc
|
| +++ b/chrome/browser/ui/app_list/app_list_service_interactive_uitest.cc
|
| @@ -70,12 +70,14 @@ class AppListServiceInteractiveTest : public InProcessBrowserTest {
|
| DISABLED_SwitchAppListProfilesDuringSearch
|
| #define MAYBE_ShowAppListNonDefaultProfile \
|
| DISABLED_ShowAppListNonDefaultProfile
|
| +#define MAYBE_DeleteShowingAppList DISABLED_DeleteShowingAppList
|
| #else
|
| #define MAYBE_ShowAndDismiss ShowAndDismiss
|
| #define MAYBE_SwitchAppListProfiles SwitchAppListProfiles
|
| #define MAYBE_SwitchAppListProfilesDuringSearch \
|
| SwitchAppListProfilesDuringSearch
|
| #define MAYBE_ShowAppListNonDefaultProfile ShowAppListNonDefaultProfile
|
| +#define MAYBE_DeleteShowingAppList DeleteShowingAppList
|
| #endif
|
|
|
| // Show the app list, then dismiss it.
|
| @@ -260,3 +262,26 @@ IN_PROC_BROWSER_TEST_F(ShowAppListNonDefaultInteractiveTest,
|
|
|
| service->DismissAppList();
|
| }
|
| +
|
| +// Test showing the app list for a profile then deleting that profile while the
|
| +// app list is visible.
|
| +IN_PROC_BROWSER_TEST_F(ShowAppListNonDefaultInteractiveTest,
|
| + MAYBE_DeleteShowingAppList) {
|
| + AppListService* service = test::GetAppListService();
|
| + EXPECT_TRUE(service->IsAppListVisible());
|
| + EXPECT_EQ(second_profile_name_.value(),
|
| + service->GetCurrentAppListProfile()->GetPath().BaseName().value());
|
| +
|
| + ProfileManager* profile_manager = g_browser_process->profile_manager();
|
| +
|
| + // Create a browser for the Default profile.
|
| + CreateBrowser(profile_manager->GetLastUsedProfile());
|
| +
|
| + // Delete the profile being used by the app list.
|
| + profile_manager->ScheduleProfileForDeletion(
|
| + service->GetCurrentAppListProfile()->GetPath(),
|
| + ProfileManager::CreateCallback());
|
| +
|
| + // App Launcher should get closed immediately and nothing should explode.
|
| + EXPECT_FALSE(service->IsAppListVisible());
|
| +}
|
|
|