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

Unified Diff: chrome/browser/ui/ash/launcher/arc_app_launcher_browsertest.cc

Issue 2276553002: arc: Open launcher after installing app from Android (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: clean Created 4 years, 4 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/ash/launcher/arc_app_launcher_browsertest.cc
diff --git a/chrome/browser/ui/ash/launcher/arc_app_launcher_browsertest.cc b/chrome/browser/ui/ash/launcher/arc_app_launcher_browsertest.cc
index d72acafb895e3a314f79c3c30a5511ac47c68ba0..609230c51137d5aebd427597ca08b5ed6b2a99f4 100644
--- a/chrome/browser/ui/ash/launcher/arc_app_launcher_browsertest.cc
+++ b/chrome/browser/ui/ash/launcher/arc_app_launcher_browsertest.cc
@@ -9,6 +9,7 @@
#include "base/macros.h"
#include "base/run_loop.h"
#include "chrome/browser/extensions/extension_browsertest.h"
+#include "chrome/browser/ui/app_list/app_list_service.h"
#include "chrome/browser/ui/app_list/arc/arc_app_list_prefs.h"
#include "chrome/browser/ui/app_list/arc/arc_app_utils.h"
#include "chrome/browser/ui/ash/launcher/arc_app_deferred_launcher_controller.h"
@@ -44,7 +45,7 @@ const char kTestAppName[] = "Test Arc App";
const char kTestAppName2[] = "Test Arc App 2";
const char kTestAppPackage[] = "test.arc.app.package";
const char kTestAppActivity[] = "test.arc.app.package.activity";
-const char kTestAppActivity2[] = "test.arc.app.package.activity2";
+const char kTestAppActivity2[] = "test.arc.gitapp.package.activity2";
constexpr int kAppAnimatedThresholdMs = 100;
std::string GetTestApp1Id() {
@@ -152,13 +153,16 @@ class ArcAppLauncherBrowserTest : public ExtensionBrowserTest {
ASSERT_TRUE(app_info2);
EXPECT_TRUE(app_info2->ready);
}
+ }
+ void SendPackageAdded(bool package_synced) {
arc::mojom::ArcPackageInfo package_info;
package_info.package_name = kTestAppPackage;
package_info.package_version = 1;
package_info.last_backup_android_id = 1;
package_info.last_backup_time = 1;
- package_info.sync = false;
+ package_info.sync = package_synced;
+ package_info.system = false;
app_host()->OnPackageAdded(arc::mojom::ArcPackageInfo::From(package_info));
base::RunLoop().RunUntilIdle();
@@ -220,6 +224,7 @@ class ArcAppDeferredLauncherBrowserTest
IN_PROC_BROWSER_TEST_P(ArcAppDeferredLauncherBrowserTest, StartAppDeferred) {
// Install app to remember existing apps.
InstallTestApps(false);
+ SendPackageAdded(false);
const std::string app_id = GetTestApp1Id();
if (is_pinned()) {
@@ -255,6 +260,7 @@ IN_PROC_BROWSER_TEST_P(ArcAppDeferredLauncherBrowserTest, StartAppDeferred) {
// Now simulates that Arc is started and app list is refreshed. This
// should stop animation and delete icon from the shelf.
InstallTestApps(false);
+ SendPackageAdded(false);
EXPECT_TRUE(chrome_controller()
->GetArcDeferredLauncher()
->GetActiveTime(app_id)
@@ -295,6 +301,7 @@ INSTANTIATE_TEST_CASE_P(ArcAppDeferredLauncherBrowserTestInstance,
// This tests validates pin state on package update and remove.
IN_PROC_BROWSER_TEST_F(ArcAppLauncherBrowserTest, PinOnPackageUpdateAndRemove) {
InstallTestApps(true);
+ SendPackageAdded(false);
const std::string app_id1 = GetTestApp1Id();
const std::string app_id2 = GetTestApp2Id();
@@ -305,13 +312,13 @@ IN_PROC_BROWSER_TEST_F(ArcAppLauncherBrowserTest, PinOnPackageUpdateAndRemove) {
EXPECT_TRUE(shelf_id1_before);
EXPECT_TRUE(shelf_delegate()->GetShelfIDForAppID(app_id2));
- // Package contains only one app.
+ // Package contains only one app. App list is not shown for updated package.
SendPackageUpdated(false);
// Second pin should gone.
EXPECT_EQ(shelf_id1_before, shelf_delegate()->GetShelfIDForAppID(app_id1));
EXPECT_FALSE(shelf_delegate()->GetShelfIDForAppID(app_id2));
- // Package contains two apps.
+ // Package contains two apps. App list is not shown for updated package.
SendPackageUpdated(true);
// Second pin should not appear.
EXPECT_EQ(shelf_id1_before, shelf_delegate()->GetShelfIDForAppID(app_id1));
@@ -323,3 +330,24 @@ IN_PROC_BROWSER_TEST_F(ArcAppLauncherBrowserTest, PinOnPackageUpdateAndRemove) {
EXPECT_FALSE(shelf_delegate()->GetShelfIDForAppID(app_id1));
EXPECT_FALSE(shelf_delegate()->GetShelfIDForAppID(app_id2));
}
+
+// This test validates that app list is shown on new package and not shown
+// on package update.
+IN_PROC_BROWSER_TEST_F(ArcAppLauncherBrowserTest, AppListShown) {
+ AppListService* app_list_service = AppListService::Get();
+ ASSERT_TRUE(app_list_service);
+
+ EXPECT_FALSE(app_list_service->IsAppListVisible());
+
+ // New package is available. Show app list.
+ InstallTestApps(false);
+ SendPackageAdded(true);
+ EXPECT_TRUE(app_list_service->IsAppListVisible());
+
+ app_list_service->DismissAppList();
+ EXPECT_FALSE(app_list_service->IsAppListVisible());
+
+ // Send package update event. App list is not shown.
+ SendPackageAdded(true);
+ EXPECT_FALSE(app_list_service->IsAppListVisible());
+}

Powered by Google App Engine
This is Rietveld 408576698