Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 460aa509 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Fix AssistDataRequesterTest"

parents 221d89a9 0efe2833
Loading
Loading
Loading
Loading
+8 −4
Original line number Diff line number Diff line
@@ -24,6 +24,7 @@ import static com.android.server.wm.ActivityTaskManagerInternal.ASSIST_KEY_RECEI

import android.app.ActivityTaskManager;
import android.app.AppOpsManager;
import android.app.IActivityTaskManager;
import android.app.IAssistDataReceiver;
import android.content.Context;
import android.graphics.Bitmap;
@@ -33,6 +34,7 @@ import android.os.RemoteException;
import android.view.IWindowManager;

import com.android.internal.annotations.GuardedBy;
import com.android.internal.annotations.VisibleForTesting;
import com.android.internal.logging.MetricsLogger;

import java.io.PrintWriter;
@@ -50,6 +52,8 @@ public class AssistDataRequester extends IAssistDataReceiver.Stub {
    public static final String KEY_RECEIVER_EXTRA_INDEX = "index";

    private IWindowManager mWindowManager;
    @VisibleForTesting
    public IActivityTaskManager mActivityTaskManager;
    private Context mContext;
    private AppOpsManager mAppOpsManager;

@@ -128,6 +132,7 @@ public class AssistDataRequester extends IAssistDataReceiver.Stub {
        mCallbacks = callbacks;
        mCallbacksLock = callbacksLock;
        mWindowManager = windowManager;
        mActivityTaskManager = ActivityTaskManager.getService();
        mContext = context;
        mAppOpsManager = appOpsManager;
        mRequestStructureAppOps = requestStructureAppOps;
@@ -195,8 +200,7 @@ public class AssistDataRequester extends IAssistDataReceiver.Stub {
        // Ensure that the current activity supports assist data
        boolean isAssistDataAllowed = false;
        try {
            isAssistDataAllowed =
                    ActivityTaskManager.getService().isAssistDataAllowedOnCurrentActivity();
            isAssistDataAllowed = mActivityTaskManager.isAssistDataAllowedOnCurrentActivity();
        } catch (RemoteException e) {
            // Should never happen
        }
@@ -222,9 +226,9 @@ public class AssistDataRequester extends IAssistDataReceiver.Stub {
                        receiverExtras.putInt(KEY_RECEIVER_EXTRA_INDEX, i);
                        receiverExtras.putInt(KEY_RECEIVER_EXTRA_COUNT, numActivities);
                        boolean result = requestAutofillData
                                ? ActivityTaskManager.getService().requestAutofillData(this,
                                ? mActivityTaskManager.requestAutofillData(this,
                                        receiverExtras, topActivity, 0 /* flags */)
                                : ActivityTaskManager.getService().requestAssistContextExtras(
                                : mActivityTaskManager.requestAssistContextExtras(
                                        ASSIST_CONTEXT_FULL, this, receiverExtras, topActivity,
                                        /* focused= */ i == 0, /* newSessionId= */ i == 0);
                        if (result) {
+1 −13
Original line number Diff line number Diff line
@@ -38,9 +38,7 @@ import static org.mockito.ArgumentMatchers.anyString;
import static org.mockito.ArgumentMatchers.eq;

import android.app.AppOpsManager;
import android.app.IActivityManager;
import android.app.IActivityTaskManager;
import android.content.Context;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.os.Handler;
@@ -50,7 +48,6 @@ import android.platform.test.annotations.Presubmit;
import android.util.Log;
import android.view.IWindowManager;

import androidx.test.filters.FlakyTest;
import androidx.test.filters.MediumTest;

import com.android.server.am.AssistDataRequester;
@@ -88,12 +85,10 @@ public class AssistDataRequesterTest extends ActivityTestsBase {
    private static final int TEST_UID = 0;
    private static final String TEST_PACKAGE = "";

    private Context mContext;
    private AssistDataRequester mDataRequester;
    private Callbacks mCallbacks;
    private Object mCallbacksLock;
    private Handler mHandler;
    private IActivityManager mAm;
    private IActivityTaskManager mAtm;
    private IWindowManager mWm;
    private AppOpsManager mAppOpsManager;
@@ -109,7 +104,6 @@ public class AssistDataRequesterTest extends ActivityTestsBase {

    @Before
    public void setUp() throws Exception {
        mAm = mock(IActivityManager.class);
        mAtm = mock(IActivityTaskManager.class);
        mWm = mock(IWindowManager.class);
        mAppOpsManager = mock(AppOpsManager.class);
@@ -118,7 +112,7 @@ public class AssistDataRequesterTest extends ActivityTestsBase {
        mCallbacks = new Callbacks();
        mDataRequester = new AssistDataRequester(mContext, mWm, mAppOpsManager, mCallbacks,
                mCallbacksLock, OP_ASSIST_STRUCTURE, OP_ASSIST_SCREENSHOT);

        mDataRequester.mActivityTaskManager = mAtm;
        // Gate the continuation of the assist data callbacks until we are ready within the tests
        mGate = new CountDownLatch(1);
        doAnswer(invocation -> {
@@ -155,7 +149,6 @@ public class AssistDataRequesterTest extends ActivityTestsBase {
                .checkOpNoThrow(eq(OP_ASSIST_SCREENSHOT), anyInt(), anyString());
    }

    @FlakyTest(bugId = 124088319)
    @Test
    public void testRequestData() throws Exception {
        setupMocks(CURRENT_ACTIVITY_ASSIST_ALLOWED, CALLER_ASSIST_STRUCTURE_ALLOWED,
@@ -176,7 +169,6 @@ public class AssistDataRequesterTest extends ActivityTestsBase {
        assertReceivedDataCount(0, 0, 0, 0);
    }

    @FlakyTest(bugId = 124088319)
    @Test
    public void testCurrentAppDisallow_expectNullCallbacks() throws Exception {
        setupMocks(!CURRENT_ACTIVITY_ASSIST_ALLOWED, CALLER_ASSIST_STRUCTURE_ALLOWED,
@@ -187,7 +179,6 @@ public class AssistDataRequesterTest extends ActivityTestsBase {
        assertReceivedDataCount(0, 1, 0, 1);
    }

    @FlakyTest(bugId = 124088319)
    @Test
    public void testProcessPendingData() throws Exception {
        setupMocks(CURRENT_ACTIVITY_ASSIST_ALLOWED, CALLER_ASSIST_STRUCTURE_ALLOWED,
@@ -245,7 +236,6 @@ public class AssistDataRequesterTest extends ActivityTestsBase {
        assertReceivedDataCount(0, 1, 0, 1);
    }

    @FlakyTest(bugId = 124088319)
    @Test
    public void testDisallowAssistContextExtras_expectNullDataCallbacks() throws Exception {
        setupMocks(CURRENT_ACTIVITY_ASSIST_ALLOWED, CALLER_ASSIST_STRUCTURE_ALLOWED,
@@ -259,7 +249,6 @@ public class AssistDataRequesterTest extends ActivityTestsBase {
        assertReceivedDataCount(0, 1, 0, 1);
    }

    @FlakyTest(bugId = 124088319)
    @Test
    public void testNoFetchScreenshots_expectNoScreenshotCallbacks() throws Exception {
        setupMocks(CURRENT_ACTIVITY_ASSIST_ALLOWED, CALLER_ASSIST_STRUCTURE_ALLOWED,
@@ -270,7 +259,6 @@ public class AssistDataRequesterTest extends ActivityTestsBase {
        assertReceivedDataCount(5, 5, 0, 0);
    }

    @FlakyTest(bugId = 124088319)
    @Test
    public void testDisallowAssistScreenshot_expectNullScreenshotCallback() throws Exception {
        setupMocks(CURRENT_ACTIVITY_ASSIST_ALLOWED, CALLER_ASSIST_STRUCTURE_ALLOWED,