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

Commit 539b191b authored by Treehugger Robot's avatar Treehugger Robot Committed by Automerger Merge Worker
Browse files

Merge "Fix errorprone warnings that should be errors" am: 9ce8425e am: a013801e am: c9bd37e4

parents 155d1a75 c9bd37e4
Loading
Loading
Loading
Loading
+90 −94
Original line number Diff line number Diff line
@@ -16,6 +16,8 @@

package com.android.server.telecom;

import static java.util.Map.entry;

import android.content.Context;
import android.os.SystemProperties;

@@ -59,101 +61,95 @@ public class Analytics {
    public static final String ANALYTICS_DUMPSYS_ARG = "analytics";
    private static final String CLEAR_ANALYTICS_ARG = "clear";

    public static final Map<String, Integer> sLogEventToAnalyticsEvent =
            new HashMap<String, Integer>() {{
                put(LogUtils.Events.SET_SELECT_PHONE_ACCOUNT,
                        AnalyticsEvent.SET_SELECT_PHONE_ACCOUNT);
                put(LogUtils.Events.REQUEST_HOLD, AnalyticsEvent.REQUEST_HOLD);
                put(LogUtils.Events.REQUEST_UNHOLD, AnalyticsEvent.REQUEST_UNHOLD);
                put(LogUtils.Events.SWAP, AnalyticsEvent.SWAP);
                put(LogUtils.Events.SKIP_RINGING, AnalyticsEvent.SKIP_RINGING);
                put(LogUtils.Events.CONFERENCE_WITH, AnalyticsEvent.CONFERENCE_WITH);
                put(LogUtils.Events.SPLIT_FROM_CONFERENCE, AnalyticsEvent.SPLIT_CONFERENCE);
                put(LogUtils.Events.SET_PARENT, AnalyticsEvent.SET_PARENT);
                put(LogUtils.Events.MUTE, AnalyticsEvent.MUTE);
                put(LogUtils.Events.UNMUTE, AnalyticsEvent.UNMUTE);
                put(LogUtils.Events.AUDIO_ROUTE_BT, AnalyticsEvent.AUDIO_ROUTE_BT);
                put(LogUtils.Events.AUDIO_ROUTE_EARPIECE, AnalyticsEvent.AUDIO_ROUTE_EARPIECE);
                put(LogUtils.Events.AUDIO_ROUTE_HEADSET, AnalyticsEvent.AUDIO_ROUTE_HEADSET);
                put(LogUtils.Events.AUDIO_ROUTE_SPEAKER, AnalyticsEvent.AUDIO_ROUTE_SPEAKER);
                put(LogUtils.Events.SILENCE, AnalyticsEvent.SILENCE);
                put(LogUtils.Events.SCREENING_COMPLETED, AnalyticsEvent.SCREENING_COMPLETED);
                put(LogUtils.Events.BLOCK_CHECK_FINISHED, AnalyticsEvent.BLOCK_CHECK_FINISHED);
                put(LogUtils.Events.DIRECT_TO_VM_FINISHED, AnalyticsEvent.DIRECT_TO_VM_FINISHED);
                put(LogUtils.Events.REMOTELY_HELD, AnalyticsEvent.REMOTELY_HELD);
                put(LogUtils.Events.REMOTELY_UNHELD, AnalyticsEvent.REMOTELY_UNHELD);
                put(LogUtils.Events.REQUEST_PULL, AnalyticsEvent.REQUEST_PULL);
                put(LogUtils.Events.REQUEST_ACCEPT, AnalyticsEvent.REQUEST_ACCEPT);
                put(LogUtils.Events.REQUEST_REJECT, AnalyticsEvent.REQUEST_REJECT);
                put(LogUtils.Events.SET_ACTIVE, AnalyticsEvent.SET_ACTIVE);
                put(LogUtils.Events.SET_DISCONNECTED, AnalyticsEvent.SET_DISCONNECTED);
                put(LogUtils.Events.SET_HOLD, AnalyticsEvent.SET_HOLD);
                put(LogUtils.Events.SET_DIALING, AnalyticsEvent.SET_DIALING);
                put(LogUtils.Events.START_CONNECTION, AnalyticsEvent.START_CONNECTION);
                put(LogUtils.Events.BIND_CS, AnalyticsEvent.BIND_CS);
                put(LogUtils.Events.CS_BOUND, AnalyticsEvent.CS_BOUND);
                put(LogUtils.Events.SCREENING_SENT, AnalyticsEvent.SCREENING_SENT);
                put(LogUtils.Events.DIRECT_TO_VM_INITIATED, AnalyticsEvent.DIRECT_TO_VM_INITIATED);
                put(LogUtils.Events.BLOCK_CHECK_INITIATED, AnalyticsEvent.BLOCK_CHECK_INITIATED);
                put(LogUtils.Events.FILTERING_INITIATED, AnalyticsEvent.FILTERING_INITIATED);
                put(LogUtils.Events.FILTERING_COMPLETED, AnalyticsEvent.FILTERING_COMPLETED);
                put(LogUtils.Events.FILTERING_TIMED_OUT, AnalyticsEvent.FILTERING_TIMED_OUT);
            }};

    public static final Map<String, Integer> sLogSessionToSessionId =
            new HashMap<String, Integer> () {{
                put(LogUtils.Sessions.ICA_ANSWER_CALL, SessionTiming.ICA_ANSWER_CALL);
                put(LogUtils.Sessions.ICA_REJECT_CALL, SessionTiming.ICA_REJECT_CALL);
                put(LogUtils.Sessions.ICA_DISCONNECT_CALL, SessionTiming.ICA_DISCONNECT_CALL);
                put(LogUtils.Sessions.ICA_HOLD_CALL, SessionTiming.ICA_HOLD_CALL);
                put(LogUtils.Sessions.ICA_UNHOLD_CALL, SessionTiming.ICA_UNHOLD_CALL);
                put(LogUtils.Sessions.ICA_MUTE, SessionTiming.ICA_MUTE);
                put(LogUtils.Sessions.ICA_SET_AUDIO_ROUTE, SessionTiming.ICA_SET_AUDIO_ROUTE);
                put(LogUtils.Sessions.ICA_CONFERENCE, SessionTiming.ICA_CONFERENCE);
                put(LogUtils.Sessions.CSW_HANDLE_CREATE_CONNECTION_COMPLETE,
                        SessionTiming.CSW_HANDLE_CREATE_CONNECTION_COMPLETE);
                put(LogUtils.Sessions.CSW_SET_ACTIVE, SessionTiming.CSW_SET_ACTIVE);
                put(LogUtils.Sessions.CSW_SET_RINGING, SessionTiming.CSW_SET_RINGING);
                put(LogUtils.Sessions.CSW_SET_DIALING, SessionTiming.CSW_SET_DIALING);
                put(LogUtils.Sessions.CSW_SET_DISCONNECTED, SessionTiming.CSW_SET_DISCONNECTED);
                put(LogUtils.Sessions.CSW_SET_ON_HOLD, SessionTiming.CSW_SET_ON_HOLD);
                put(LogUtils.Sessions.CSW_REMOVE_CALL, SessionTiming.CSW_REMOVE_CALL);
                put(LogUtils.Sessions.CSW_SET_IS_CONFERENCED, SessionTiming.CSW_SET_IS_CONFERENCED);
                put(LogUtils.Sessions.CSW_ADD_CONFERENCE_CALL,
                        SessionTiming.CSW_ADD_CONFERENCE_CALL);

            }};

    public static final Map<String, Integer> sLogEventTimingToAnalyticsEventTiming =
            new HashMap<String, Integer>() {{
                put(LogUtils.Events.Timings.ACCEPT_TIMING,
                        ParcelableCallAnalytics.EventTiming.ACCEPT_TIMING);
                put(LogUtils.Events.Timings.REJECT_TIMING,
                        ParcelableCallAnalytics.EventTiming.REJECT_TIMING);
                put(LogUtils.Events.Timings.DISCONNECT_TIMING,
                        ParcelableCallAnalytics.EventTiming.DISCONNECT_TIMING);
                put(LogUtils.Events.Timings.HOLD_TIMING,
                        ParcelableCallAnalytics.EventTiming.HOLD_TIMING);
                put(LogUtils.Events.Timings.UNHOLD_TIMING,
                        ParcelableCallAnalytics.EventTiming.UNHOLD_TIMING);
                put(LogUtils.Events.Timings.OUTGOING_TIME_TO_DIALING_TIMING,
                        ParcelableCallAnalytics.EventTiming.OUTGOING_TIME_TO_DIALING_TIMING);
                put(LogUtils.Events.Timings.BIND_CS_TIMING,
                        ParcelableCallAnalytics.EventTiming.BIND_CS_TIMING);
                put(LogUtils.Events.Timings.SCREENING_COMPLETED_TIMING,
                        ParcelableCallAnalytics.EventTiming.SCREENING_COMPLETED_TIMING);
                put(LogUtils.Events.Timings.DIRECT_TO_VM_FINISHED_TIMING,
                        ParcelableCallAnalytics.EventTiming.DIRECT_TO_VM_FINISHED_TIMING);
                put(LogUtils.Events.Timings.BLOCK_CHECK_FINISHED_TIMING,
                        ParcelableCallAnalytics.EventTiming.BLOCK_CHECK_FINISHED_TIMING);
                put(LogUtils.Events.Timings.FILTERING_COMPLETED_TIMING,
                        ParcelableCallAnalytics.EventTiming.FILTERING_COMPLETED_TIMING);
                put(LogUtils.Events.Timings.FILTERING_TIMED_OUT_TIMING,
                        ParcelableCallAnalytics.EventTiming.FILTERING_TIMED_OUT_TIMING);
                put(LogUtils.Events.Timings.START_CONNECTION_TO_REQUEST_DISCONNECT_TIMING,
    public static final Map<String, Integer> sLogEventToAnalyticsEvent = Map.ofEntries(
                entry(LogUtils.Events.SET_SELECT_PHONE_ACCOUNT,
                        AnalyticsEvent.SET_SELECT_PHONE_ACCOUNT),
                entry(LogUtils.Events.REQUEST_HOLD, AnalyticsEvent.REQUEST_HOLD),
                entry(LogUtils.Events.REQUEST_UNHOLD, AnalyticsEvent.REQUEST_UNHOLD),
                entry(LogUtils.Events.SWAP, AnalyticsEvent.SWAP),
                entry(LogUtils.Events.SKIP_RINGING, AnalyticsEvent.SKIP_RINGING),
                entry(LogUtils.Events.CONFERENCE_WITH, AnalyticsEvent.CONFERENCE_WITH),
                entry(LogUtils.Events.SPLIT_FROM_CONFERENCE, AnalyticsEvent.SPLIT_CONFERENCE),
                entry(LogUtils.Events.SET_PARENT, AnalyticsEvent.SET_PARENT),
                entry(LogUtils.Events.MUTE, AnalyticsEvent.MUTE),
                entry(LogUtils.Events.UNMUTE, AnalyticsEvent.UNMUTE),
                entry(LogUtils.Events.AUDIO_ROUTE_BT, AnalyticsEvent.AUDIO_ROUTE_BT),
                entry(LogUtils.Events.AUDIO_ROUTE_EARPIECE, AnalyticsEvent.AUDIO_ROUTE_EARPIECE),
                entry(LogUtils.Events.AUDIO_ROUTE_HEADSET, AnalyticsEvent.AUDIO_ROUTE_HEADSET),
                entry(LogUtils.Events.AUDIO_ROUTE_SPEAKER, AnalyticsEvent.AUDIO_ROUTE_SPEAKER),
                entry(LogUtils.Events.SILENCE, AnalyticsEvent.SILENCE),
                entry(LogUtils.Events.SCREENING_COMPLETED, AnalyticsEvent.SCREENING_COMPLETED),
                entry(LogUtils.Events.BLOCK_CHECK_FINISHED, AnalyticsEvent.BLOCK_CHECK_FINISHED),
                entry(LogUtils.Events.DIRECT_TO_VM_FINISHED, AnalyticsEvent.DIRECT_TO_VM_FINISHED),
                entry(LogUtils.Events.REMOTELY_HELD, AnalyticsEvent.REMOTELY_HELD),
                entry(LogUtils.Events.REMOTELY_UNHELD, AnalyticsEvent.REMOTELY_UNHELD),
                entry(LogUtils.Events.REQUEST_PULL, AnalyticsEvent.REQUEST_PULL),
                entry(LogUtils.Events.REQUEST_ACCEPT, AnalyticsEvent.REQUEST_ACCEPT),
                entry(LogUtils.Events.REQUEST_REJECT, AnalyticsEvent.REQUEST_REJECT),
                entry(LogUtils.Events.SET_ACTIVE, AnalyticsEvent.SET_ACTIVE),
                entry(LogUtils.Events.SET_DISCONNECTED, AnalyticsEvent.SET_DISCONNECTED),
                entry(LogUtils.Events.SET_HOLD, AnalyticsEvent.SET_HOLD),
                entry(LogUtils.Events.SET_DIALING, AnalyticsEvent.SET_DIALING),
                entry(LogUtils.Events.START_CONNECTION, AnalyticsEvent.START_CONNECTION),
                entry(LogUtils.Events.BIND_CS, AnalyticsEvent.BIND_CS),
                entry(LogUtils.Events.CS_BOUND, AnalyticsEvent.CS_BOUND),
                entry(LogUtils.Events.SCREENING_SENT, AnalyticsEvent.SCREENING_SENT),
                entry(LogUtils.Events.DIRECT_TO_VM_INITIATED,
                        AnalyticsEvent.DIRECT_TO_VM_INITIATED),
                entry(LogUtils.Events.BLOCK_CHECK_INITIATED, AnalyticsEvent.BLOCK_CHECK_INITIATED),
                entry(LogUtils.Events.FILTERING_INITIATED, AnalyticsEvent.FILTERING_INITIATED),
                entry(LogUtils.Events.FILTERING_COMPLETED, AnalyticsEvent.FILTERING_COMPLETED),
                entry(LogUtils.Events.FILTERING_TIMED_OUT, AnalyticsEvent.FILTERING_TIMED_OUT));

    public static final Map<String, Integer> sLogSessionToSessionId = Map.ofEntries(
                entry(LogUtils.Sessions.ICA_ANSWER_CALL, SessionTiming.ICA_ANSWER_CALL),
                entry(LogUtils.Sessions.ICA_REJECT_CALL, SessionTiming.ICA_REJECT_CALL),
                entry(LogUtils.Sessions.ICA_DISCONNECT_CALL, SessionTiming.ICA_DISCONNECT_CALL),
                entry(LogUtils.Sessions.ICA_HOLD_CALL, SessionTiming.ICA_HOLD_CALL),
                entry(LogUtils.Sessions.ICA_UNHOLD_CALL, SessionTiming.ICA_UNHOLD_CALL),
                entry(LogUtils.Sessions.ICA_MUTE, SessionTiming.ICA_MUTE),
                entry(LogUtils.Sessions.ICA_SET_AUDIO_ROUTE, SessionTiming.ICA_SET_AUDIO_ROUTE),
                entry(LogUtils.Sessions.ICA_CONFERENCE, SessionTiming.ICA_CONFERENCE),
                entry(LogUtils.Sessions.CSW_HANDLE_CREATE_CONNECTION_COMPLETE,
                        SessionTiming.CSW_HANDLE_CREATE_CONNECTION_COMPLETE),
                entry(LogUtils.Sessions.CSW_SET_ACTIVE, SessionTiming.CSW_SET_ACTIVE),
                entry(LogUtils.Sessions.CSW_SET_RINGING, SessionTiming.CSW_SET_RINGING),
                entry(LogUtils.Sessions.CSW_SET_DIALING, SessionTiming.CSW_SET_DIALING),
                entry(LogUtils.Sessions.CSW_SET_DISCONNECTED, SessionTiming.CSW_SET_DISCONNECTED),
                entry(LogUtils.Sessions.CSW_SET_ON_HOLD, SessionTiming.CSW_SET_ON_HOLD),
                entry(LogUtils.Sessions.CSW_REMOVE_CALL, SessionTiming.CSW_REMOVE_CALL),
                entry(LogUtils.Sessions.CSW_SET_IS_CONFERENCED, SessionTiming.CSW_SET_IS_CONFERENCED),
                entry(LogUtils.Sessions.CSW_ADD_CONFERENCE_CALL,
                        SessionTiming.CSW_ADD_CONFERENCE_CALL));

    public static final Map<String, Integer> sLogEventTimingToAnalyticsEventTiming = Map.ofEntries(
                entry(LogUtils.Events.Timings.ACCEPT_TIMING,
                        ParcelableCallAnalytics.EventTiming.ACCEPT_TIMING),
                entry(LogUtils.Events.Timings.REJECT_TIMING,
                        ParcelableCallAnalytics.EventTiming.REJECT_TIMING),
                entry(LogUtils.Events.Timings.DISCONNECT_TIMING,
                        ParcelableCallAnalytics.EventTiming.DISCONNECT_TIMING),
                entry(LogUtils.Events.Timings.HOLD_TIMING,
                        ParcelableCallAnalytics.EventTiming.HOLD_TIMING),
                entry(LogUtils.Events.Timings.UNHOLD_TIMING,
                        ParcelableCallAnalytics.EventTiming.UNHOLD_TIMING),
                entry(LogUtils.Events.Timings.OUTGOING_TIME_TO_DIALING_TIMING,
                        ParcelableCallAnalytics.EventTiming.OUTGOING_TIME_TO_DIALING_TIMING),
                entry(LogUtils.Events.Timings.BIND_CS_TIMING,
                        ParcelableCallAnalytics.EventTiming.BIND_CS_TIMING),
                entry(LogUtils.Events.Timings.SCREENING_COMPLETED_TIMING,
                        ParcelableCallAnalytics.EventTiming.SCREENING_COMPLETED_TIMING),
                entry(LogUtils.Events.Timings.DIRECT_TO_VM_FINISHED_TIMING,
                        ParcelableCallAnalytics.EventTiming.DIRECT_TO_VM_FINISHED_TIMING),
                entry(LogUtils.Events.Timings.BLOCK_CHECK_FINISHED_TIMING,
                        ParcelableCallAnalytics.EventTiming.BLOCK_CHECK_FINISHED_TIMING),
                entry(LogUtils.Events.Timings.FILTERING_COMPLETED_TIMING,
                        ParcelableCallAnalytics.EventTiming.FILTERING_COMPLETED_TIMING),
                entry(LogUtils.Events.Timings.FILTERING_TIMED_OUT_TIMING,
                        ParcelableCallAnalytics.EventTiming.FILTERING_TIMED_OUT_TIMING),
                entry(LogUtils.Events.Timings.START_CONNECTION_TO_REQUEST_DISCONNECT_TIMING,
                        ParcelableCallAnalytics.EventTiming.
                                START_CONNECTION_TO_REQUEST_DISCONNECT_TIMING);
            }};
                                START_CONNECTION_TO_REQUEST_DISCONNECT_TIMING));

    public static final Map<Integer, String> sSessionIdToLogSession = new HashMap<>();
    static {
+3 −5
Original line number Diff line number Diff line
@@ -167,11 +167,9 @@ public class CallsManagerTest extends TelecomTestCase {
    private static final Uri TEST_ADDRESS = Uri.parse("tel:555-1212");
    private static final Uri TEST_ADDRESS2 = Uri.parse("tel:555-1213");
    private static final Uri TEST_ADDRESS3 = Uri.parse("tel:555-1214");
    private static final Map<Uri, PhoneAccountHandle> CONTACT_PREFERRED_ACCOUNT =
            new HashMap<Uri, PhoneAccountHandle>() {{
                put(TEST_ADDRESS2, SIM_1_HANDLE);
                put(TEST_ADDRESS3, SIM_2_HANDLE);
    }};
    private static final Map<Uri, PhoneAccountHandle> CONTACT_PREFERRED_ACCOUNT = Map.of(
            TEST_ADDRESS2, SIM_1_HANDLE,
            TEST_ADDRESS3, SIM_2_HANDLE);

    private static int sCallId = 1;
    private final TelecomSystem.SyncRoot mLock = new TelecomSystem.SyncRoot() { };
+5 −9
Original line number Diff line number Diff line
@@ -31,7 +31,7 @@ import org.junit.runner.RunWith;
import org.junit.runners.JUnit4;
import org.mockito.Mock;

import java.util.ArrayList;
import java.util.List;

import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.never;
@@ -67,9 +67,7 @@ public class ProximitySensorManagerTest extends TelecomTestCase{
    @SmallTest
    @Test
    public void testTurnOnProximityWithCallsActive() throws Exception {
        when(mCallsManager.getCalls()).thenReturn(new ArrayList<Call>(){{
            add(mCall);
        }});
        when(mCallsManager.getCalls()).thenReturn(List.of(mCall));
        when(mWakeLockAdapter.isHeld()).thenReturn(false);

        mProximitySensorManager.turnOn();
@@ -80,7 +78,7 @@ public class ProximitySensorManagerTest extends TelecomTestCase{
    @SmallTest
    @Test
    public void testTurnOnProximityWithNoCallsActive() throws Exception {
        when(mCallsManager.getCalls()).thenReturn(new ArrayList<Call>());
        when(mCallsManager.getCalls()).thenReturn(List.of());
        when(mWakeLockAdapter.isHeld()).thenReturn(false);

        mProximitySensorManager.turnOn();
@@ -102,9 +100,7 @@ public class ProximitySensorManagerTest extends TelecomTestCase{
    @SmallTest
    @Test
    public void testCallRemovedFromCallsManagerCallsActive() throws Exception {
        when(mCallsManager.getCalls()).thenReturn(new ArrayList<Call>(){{
            add(mCall);
        }});
        when(mCallsManager.getCalls()).thenReturn(List.of(mCall));
        when(mWakeLockAdapter.isHeld()).thenReturn(true);

        mProximitySensorManager.onCallRemoved(mock(Call.class));
@@ -115,7 +111,7 @@ public class ProximitySensorManagerTest extends TelecomTestCase{
    @SmallTest
    @Test
    public void testCallRemovedFromCallsManagerNoCallsActive() throws Exception {
        when(mCallsManager.getCalls()).thenReturn(new ArrayList<Call>());
        when(mCallsManager.getCalls()).thenReturn(List.of());
        when(mWakeLockAdapter.isHeld()).thenReturn(true);

        mProximitySensorManager.onCallRemoved(mock(Call.class));
+3 −1
Original line number Diff line number Diff line
@@ -144,6 +144,7 @@ public class SessionTest extends TelecomTestCase {
     * Ensure creating two sessions that are parent/child of each other does not lead to a crash
     * or infinite recursion when using Session#toString.
     */
    @SuppressWarnings("ReturnValueIgnored")
    @SmallTest
    @Test
    public void testRecursion_toString() {
@@ -159,7 +160,6 @@ public class SessionTest extends TelecomTestCase {

        // Make sure calling these methods does not result in a crash
        try {

            parentSession.toString();
            childSession.toString();
        } catch (Exception e) {
@@ -176,6 +176,7 @@ public class SessionTest extends TelecomTestCase {
     * Ensure creating two sessions and setting the child as the parent to itself doesn't cause a
     * crash due to infinite recursion.
     */
    @SuppressWarnings("ReturnValueIgnored")
    @SmallTest
    @Test
    public void testRecursion_toString_childCircDep() {
@@ -237,6 +238,7 @@ public class SessionTest extends TelecomTestCase {
     * Ensure creating two sessions that are parent/child of each other does not lead to a crash
     * or infinite recursion in the general case.
     */
    @SuppressWarnings("ReturnValueIgnored")
    @SmallTest
    @Test
    public void testRecursion() {
+13 −26
Original line number Diff line number Diff line
@@ -374,14 +374,9 @@ public class TelecomServiceImplTest extends TelecomTestCase {
    @SmallTest
    @Test
    public void testGetCallCapablePhoneAccounts() throws RemoteException {
        List<PhoneAccountHandle> fullPHList = new ArrayList<PhoneAccountHandle>() {{
            add(TEL_PA_HANDLE_16);
            add(SIP_PA_HANDLE_17);
        }};

        List<PhoneAccountHandle> smallPHList = new ArrayList<PhoneAccountHandle>() {{
            add(SIP_PA_HANDLE_17);
        }};
        List<PhoneAccountHandle> fullPHList = List.of(TEL_PA_HANDLE_16, SIP_PA_HANDLE_17);
        List<PhoneAccountHandle> smallPHList = List.of(SIP_PA_HANDLE_17);

        // Returns all phone accounts when getCallCapablePhoneAccounts is called.
        when(mFakePhoneAccountRegistrar
                .getCallCapablePhoneAccounts(nullable(String.class), eq(true),
@@ -403,10 +398,8 @@ public class TelecomServiceImplTest extends TelecomTestCase {
    @SmallTest
    @Test
    public void testGetCallCapablePhoneAccountsFailure() throws RemoteException {
        List<String> enforcedPermissions = new ArrayList<String>() {{
            add(READ_PHONE_STATE);
            add(READ_PRIVILEGED_PHONE_STATE);
        }};
        List<String> enforcedPermissions = List.of(READ_PHONE_STATE, READ_PRIVILEGED_PHONE_STATE);

        doThrow(new SecurityException()).when(mContext).enforceCallingOrSelfPermission(
                argThat(new AnyStringIn(enforcedPermissions)), anyString());

@@ -424,13 +417,9 @@ public class TelecomServiceImplTest extends TelecomTestCase {
    @SmallTest
    @Test
    public void testGetPhoneAccountsSupportingScheme() throws RemoteException {
        List<PhoneAccountHandle> sipPHList = new ArrayList<PhoneAccountHandle>() {{
            add(SIP_PA_HANDLE_17);
        }};
        List<PhoneAccountHandle> sipPHList = List.of(SIP_PA_HANDLE_17);
        List<PhoneAccountHandle> telPHList = List.of(TEL_PA_HANDLE_16);

        List<PhoneAccountHandle> telPHList = new ArrayList<PhoneAccountHandle>() {{
            add(TEL_PA_HANDLE_16);
        }};
        when(mFakePhoneAccountRegistrar
                .getCallCapablePhoneAccounts(eq("tel"), anyBoolean(), any(UserHandle.class)))
                .thenReturn(telPHList);
@@ -450,10 +439,8 @@ public class TelecomServiceImplTest extends TelecomTestCase {
    @SmallTest
    @Test
    public void testGetPhoneAccountsForPackage() throws RemoteException {
        List<PhoneAccountHandle> phoneAccountHandleList = new ArrayList<PhoneAccountHandle>() {{
            add(TEL_PA_HANDLE_16);
            add(SIP_PA_HANDLE_17);
        }};
        List<PhoneAccountHandle> phoneAccountHandleList = List.of(
            TEL_PA_HANDLE_16, SIP_PA_HANDLE_17);
        when(mFakePhoneAccountRegistrar
                .getPhoneAccountsForPackage(anyString(), any(UserHandle.class)))
                .thenReturn(phoneAccountHandleList);
@@ -482,10 +469,10 @@ public class TelecomServiceImplTest extends TelecomTestCase {
    @SmallTest
    @Test
    public void testGetAllPhoneAccounts() throws RemoteException {
        List<PhoneAccount> phoneAccountList = new ArrayList<PhoneAccount>() {{
            add(makePhoneAccount(TEL_PA_HANDLE_16).build());
            add(makePhoneAccount(SIP_PA_HANDLE_17).build());
        }};
        List<PhoneAccount> phoneAccountList = List.of(
                makePhoneAccount(TEL_PA_HANDLE_16).build(),
                makePhoneAccount(SIP_PA_HANDLE_17).build());

        when(mFakePhoneAccountRegistrar.getAllPhoneAccounts(any(UserHandle.class)))
                .thenReturn(phoneAccountList);