From 2c1c37aee5ea7e8a300fd92dadbc07e50da428e2 Mon Sep 17 00:00:00 2001 From: arangelov Date: Fri, 6 Dec 2019 14:43:34 +0000 Subject: Fix tests for infrastructure for sharesheet work tab (part 1) Test: atest com.android.internal.app.ResolverActivityTest Test: atest com.android.internal.app.ChooserActivityTest Test: atest com.android.internal.app.ResolverListControllerTest Bug: 142537267 Bug: 142538125 Change-Id: I851dab8b23774a1b2c992f41a47356a4c2c4ca59 --- .../android/internal/app/ChooserActivityTest.java | 16 ++++++++-------- .../internal/app/ChooserWrapperActivity.java | 5 +++-- .../android/internal/app/ResolverActivityTest.java | 21 ++++++++++++--------- .../internal/app/ResolverListControllerTest.java | 4 ++-- .../internal/app/ResolverWrapperActivity.java | 13 +++++++------ 5 files changed, 32 insertions(+), 27 deletions(-) diff --git a/core/tests/coretests/src/com/android/internal/app/ChooserActivityTest.java b/core/tests/coretests/src/com/android/internal/app/ChooserActivityTest.java index d427cbda7fb6..8622b7efeee7 100644 --- a/core/tests/coretests/src/com/android/internal/app/ChooserActivityTest.java +++ b/core/tests/coretests/src/com/android/internal/app/ChooserActivityTest.java @@ -313,7 +313,7 @@ public class ChooserActivityTest { assertThat(activity.isFinishing(), is(false)); onView(withId(R.id.empty)).check(matches(isDisplayed())); - onView(withId(R.id.resolver_list)).check(matches(not(isDisplayed()))); + onView(withId(R.id.profile_pager)).check(matches(not(isDisplayed()))); InstrumentationRegistry.getInstrumentation().runOnMainSync( () -> activity.getAdapter().handlePackagesChanged() ); @@ -674,12 +674,12 @@ public class ChooserActivityTest { mActivityRule.launchActivity(Intent.createChooser(sendIntent, null)); waitForIdle(); + // Second invocation is from onCreate verify(mockLogger, Mockito.times(2)).write(logMakerCaptor.capture()); - // First invocation is from onCreate - assertThat(logMakerCaptor.getAllValues().get(1).getCategory(), - is(MetricsEvent.ACTION_SHARE_WITH_PREVIEW)); - assertThat(logMakerCaptor.getAllValues().get(1).getSubtype(), + assertThat(logMakerCaptor.getAllValues().get(0).getSubtype(), is(CONTENT_PREVIEW_TEXT)); + assertThat(logMakerCaptor.getAllValues().get(0).getCategory(), + is(MetricsEvent.ACTION_SHARE_WITH_PREVIEW)); } @Test @@ -706,10 +706,10 @@ public class ChooserActivityTest { waitForIdle(); verify(mockLogger, Mockito.times(2)).write(logMakerCaptor.capture()); // First invocation is from onCreate - assertThat(logMakerCaptor.getAllValues().get(1).getCategory(), - is(MetricsEvent.ACTION_SHARE_WITH_PREVIEW)); - assertThat(logMakerCaptor.getAllValues().get(1).getSubtype(), + assertThat(logMakerCaptor.getAllValues().get(0).getSubtype(), is(CONTENT_PREVIEW_IMAGE)); + assertThat(logMakerCaptor.getAllValues().get(0).getCategory(), + is(MetricsEvent.ACTION_SHARE_WITH_PREVIEW)); } @Test diff --git a/core/tests/coretests/src/com/android/internal/app/ChooserWrapperActivity.java b/core/tests/coretests/src/com/android/internal/app/ChooserWrapperActivity.java index 03705d0599e5..a2e0095c2aee 100644 --- a/core/tests/coretests/src/com/android/internal/app/ChooserWrapperActivity.java +++ b/core/tests/coretests/src/com/android/internal/app/ChooserWrapperActivity.java @@ -29,6 +29,7 @@ import android.content.res.Resources; import android.database.Cursor; import android.graphics.Bitmap; import android.net.Uri; +import android.os.UserHandle; import android.util.Size; import com.android.internal.app.ResolverListAdapter.ResolveInfoPresentationGetter; @@ -47,7 +48,7 @@ public class ChooserWrapperActivity extends ChooserActivity { private UsageStatsManager mUsm; ChooserListAdapter getAdapter() { - return (ChooserListAdapter) mAdapter; + return mChooserMultiProfilePagerAdapter.getCurrentListAdapter(); } boolean getIsSelected() { return mIsSuccessfullySelected; } @@ -77,7 +78,7 @@ public class ChooserWrapperActivity extends ChooserActivity { } @Override - protected ResolverListController createListController() { + protected ResolverListController createListController(UserHandle userHandle) { return sOverrides.resolverListController; } diff --git a/core/tests/coretests/src/com/android/internal/app/ResolverActivityTest.java b/core/tests/coretests/src/com/android/internal/app/ResolverActivityTest.java index 344c28679568..923ce3e3935d 100644 --- a/core/tests/coretests/src/com/android/internal/app/ResolverActivityTest.java +++ b/core/tests/coretests/src/com/android/internal/app/ResolverActivityTest.java @@ -116,14 +116,14 @@ public class ResolverActivityTest { waitForIdle(); final ResolverWrapperActivity activity = mActivityRule.launchActivity(sendIntent); - final View resolverList = activity.findViewById(R.id.resolver_list); - final int initialResolverHeight = resolverList.getHeight(); + final View viewPager = activity.findViewById(R.id.profile_pager); + final int initialResolverHeight = viewPager.getHeight(); activity.runOnUiThread(() -> { ResolverDrawerLayout layout = (ResolverDrawerLayout) activity.findViewById( R.id.contentPanel); - ((ResolverDrawerLayout.LayoutParams) resolverList.getLayoutParams()).maxHeight + ((ResolverDrawerLayout.LayoutParams) viewPager.getLayoutParams()).maxHeight = initialResolverHeight - 1; // Force a relayout layout.invalidate(); @@ -131,13 +131,13 @@ public class ResolverActivityTest { }); waitForIdle(); assertThat("Drawer should be capped at maxHeight", - resolverList.getHeight() == (initialResolverHeight - 1)); + viewPager.getHeight() == (initialResolverHeight - 1)); activity.runOnUiThread(() -> { ResolverDrawerLayout layout = (ResolverDrawerLayout) activity.findViewById( R.id.contentPanel); - ((ResolverDrawerLayout.LayoutParams) resolverList.getLayoutParams()).maxHeight + ((ResolverDrawerLayout.LayoutParams) viewPager.getLayoutParams()).maxHeight = initialResolverHeight + 1; // Force a relayout layout.invalidate(); @@ -145,7 +145,7 @@ public class ResolverActivityTest { }); waitForIdle(); assertThat("Drawer should not change height if its height is less than maxHeight", - resolverList.getHeight() == initialResolverHeight); + viewPager.getHeight() == initialResolverHeight); } @Ignore // Failing - b/144929805 @@ -160,11 +160,13 @@ public class ResolverActivityTest { waitForIdle(); final ResolverWrapperActivity activity = mActivityRule.launchActivity(sendIntent); - final View resolverList = activity.findViewById(R.id.resolver_list); + final View viewPager = activity.findViewById(R.id.profile_pager); + final View divider = activity.findViewById(R.id.divider); final RelativeLayout profileView = (RelativeLayout) activity.findViewById(R.id.profile_button).getParent(); assertThat("Drawer should show at bottom by default", - profileView.getBottom() == resolverList.getTop() && profileView.getTop() > 0); + profileView.getBottom() + divider.getHeight() == viewPager.getTop() + && profileView.getTop() > 0); activity.runOnUiThread(() -> { ResolverDrawerLayout layout = (ResolverDrawerLayout) @@ -174,7 +176,8 @@ public class ResolverActivityTest { }); waitForIdle(); assertThat("Drawer should show at top with new attribute", - profileView.getBottom() == resolverList.getTop() && profileView.getTop() == 0); + profileView.getBottom() + divider.getHeight() == viewPager.getTop() + && profileView.getTop() == 0); } @Test diff --git a/core/tests/coretests/src/com/android/internal/app/ResolverListControllerTest.java b/core/tests/coretests/src/com/android/internal/app/ResolverListControllerTest.java index 5ac1489bcfef..64906bb27ff0 100644 --- a/core/tests/coretests/src/com/android/internal/app/ResolverListControllerTest.java +++ b/core/tests/coretests/src/com/android/internal/app/ResolverListControllerTest.java @@ -115,7 +115,7 @@ public class ResolverListControllerTest { mUsm = new UsageStatsManager(mMockContext, mMockService); when(mMockContext.getSystemService(Context.USAGE_STATS_SERVICE)).thenReturn(mUsm); mController = new ResolverListController(mMockContext, mMockPackageManager, sendIntent, - refererPackage, UserHandle.USER_CURRENT); + refererPackage, UserHandle.USER_CURRENT, /* userHandle */ UserHandle.SYSTEM); mController.sort(new ArrayList()); long beforeReport = getCount(mUsm, packageName, action, annotation); mController.updateChooserCounts(packageName, UserHandle.USER_CURRENT, action); @@ -132,7 +132,7 @@ public class ResolverListControllerTest { mUsm = new UsageStatsManager(mMockContext, mMockService); when(mMockContext.getSystemService(Context.USAGE_STATS_SERVICE)).thenReturn(mUsm); mController = new ResolverListController(mMockContext, mMockPackageManager, sendIntent, - refererPackage, UserHandle.USER_CURRENT); + refererPackage, UserHandle.USER_CURRENT, /* userHandle */ UserHandle.SYSTEM); List topKList = new ArrayList<>(resolvedComponents); mController.topK(topKList, 5); List sortList = new ArrayList<>(topKList); diff --git a/core/tests/coretests/src/com/android/internal/app/ResolverWrapperActivity.java b/core/tests/coretests/src/com/android/internal/app/ResolverWrapperActivity.java index 39cc83c3bc43..93357af406e8 100644 --- a/core/tests/coretests/src/com/android/internal/app/ResolverWrapperActivity.java +++ b/core/tests/coretests/src/com/android/internal/app/ResolverWrapperActivity.java @@ -23,6 +23,7 @@ import android.content.Context; import android.content.Intent; import android.content.pm.PackageManager; import android.content.pm.ResolveInfo; +import android.os.UserHandle; import com.android.internal.app.chooser.TargetInfo; @@ -37,15 +38,15 @@ public class ResolverWrapperActivity extends ResolverActivity { private UsageStatsManager mUsm; @Override - public ResolverListAdapter createAdapter(Context context, List payloadIntents, - Intent[] initialIntents, List rList, boolean filterLastUsed, - boolean useLayoutForBrowsables) { + public ResolverListAdapter createResolverListAdapter(Context context, + List payloadIntents, Intent[] initialIntents, List rList, + boolean filterLastUsed, boolean useLayoutForBrowsables, UserHandle userHandle) { return new ResolverWrapperAdapter(context, payloadIntents, initialIntents, rList, - filterLastUsed, createListController(), useLayoutForBrowsables, this); + filterLastUsed, createListController(userHandle), useLayoutForBrowsables, this); } ResolverWrapperAdapter getAdapter() { - return (ResolverWrapperAdapter) mAdapter; + return (ResolverWrapperAdapter) mMultiProfilePagerAdapter.getCurrentListAdapter(); } @Override @@ -66,7 +67,7 @@ public class ResolverWrapperActivity extends ResolverActivity { } @Override - protected ResolverListController createListController() { + protected ResolverListController createListController(UserHandle userHandle) { return sOverrides.resolverListController; } -- cgit v1.2.3-59-g8ed1b