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

Commit 0ebda44c authored by Android Build Coastguard Worker's avatar Android Build Coastguard Worker
Browse files

Snap for 13417833 from 5ee782b1 to 25Q3-release

Change-Id: Iff0189b543c4cc34ccc0f0e8701db8d487243587
parents b25f1103 5ee782b1
Loading
Loading
Loading
Loading
+27 −53
Original line number Diff line number Diff line
@@ -25,10 +25,10 @@ import static org.mockito.Mockito.eq;
import static org.mockito.Mockito.verify;

import android.os.AsyncResult;
import android.os.HandlerThread;
import android.os.PersistableBundle;
import android.telephony.AccessNetworkConstants;
import android.telephony.CarrierConfigManager;
import android.telephony.CarrierConfigManager.CarrierConfigChangeListener;
import android.telephony.CellIdentity;
import android.telephony.CellIdentityCdma;
import android.telephony.CellIdentityLte;
@@ -42,14 +42,11 @@ import android.testing.AndroidTestingRunner;
import android.testing.TestableLooper;
import android.text.TextUtils;

import com.android.internal.telephony.flags.FeatureFlags;

import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.ArgumentCaptor;
import org.mockito.Mockito;

import java.util.Collections;
import java.util.concurrent.Executor;
@@ -64,21 +61,20 @@ public class DisplayInfoControllerTest extends TelephonyTest {
    private static final String NETWORK = "TestNet";

    // Mocked classes
    private FeatureFlags mFeatureFlags;

    private DisplayInfoController mDic;
    private ServiceStateTracker mSst;
    private ServiceStateTrackerTestHandler mSstHandler;
    private PersistableBundle mBundle;
    private CarrierConfigManager.CarrierConfigChangeListener mCarrierConfigChangeListener;
    private CarrierConfigChangeListener mCarrierConfigChangeListener;

    private class ServiceStateTrackerTestHandler extends HandlerThread {
        private ServiceStateTrackerTestHandler(String name) {
            super(name);
        }
    @Before
    public void setUp() throws Exception {
        logd("DisplayInfoControllerTest setup!");
        super.setUp(getClass().getSimpleName());

        doReturn((Executor) Runnable::run).when(mContext).getMainExecutor();
        mBundle = mContextFixture.getCarrierConfigBundle();
        mBundle.putBoolean(CarrierConfigManager.KEY_SHOW_ROAMING_INDICATOR_BOOL, true);

        @Override
        public void onLooperPrepared() {
        SignalStrengthController ssc = new SignalStrengthController(mPhone);
        doReturn(ssc).when(mPhone).getSignalStrengthController();
        doReturn(new ServiceState()).when(mPhone).getServiceState();
@@ -88,42 +84,20 @@ public class DisplayInfoControllerTest extends TelephonyTest {
        // Capture listener registered for ServiceStateTracker to emulate the carrier config
        // change notification used later. In this test, it's the second one. The first one
        // comes from RatRatcheter.
            ArgumentCaptor<CarrierConfigManager.CarrierConfigChangeListener>
        ArgumentCaptor<CarrierConfigChangeListener>
                listenerArgumentCaptor = ArgumentCaptor.forClass(
                    CarrierConfigManager.CarrierConfigChangeListener.class);
                CarrierConfigChangeListener.class);
        mSst = new ServiceStateTracker(mPhone, mSimulatedCommands, mFeatureFlags);
        verify(mCarrierConfigManager, atLeast(2)).registerCarrierConfigChangeListener(any(),
                listenerArgumentCaptor.capture());
        mCarrierConfigChangeListener = listenerArgumentCaptor.getAllValues().get(1);
        doReturn(mSst).when(mPhone).getServiceStateTracker();
            setReady(true);
        }
    }

    @Before
    public void setUp() throws Exception {
        logd("DisplayInfoControllerTest setup!");
        super.setUp(getClass().getSimpleName());

        mFeatureFlags = Mockito.mock(FeatureFlags.class);
        doReturn((Executor) Runnable::run).when(mContext).getMainExecutor();
        mBundle = mContextFixture.getCarrierConfigBundle();
        mBundle.putBoolean(CarrierConfigManager.KEY_SHOW_ROAMING_INDICATOR_BOOL, true);
        mSstHandler = new ServiceStateTrackerTestHandler(getClass().getSimpleName());
        mSstHandler.start();
        waitUntilReady();
        waitForLastHandlerAction(mSstHandler.getThreadHandler());
        processAllMessages();
    }

    @After
    public void tearDown() throws Exception {
        mSst.removeCallbacksAndMessages(null);
        mSst = null;
        mSstHandler.quit();
        mSstHandler.join();
        mSstHandler = null;
        mBundle = null;
        mCarrierConfigChangeListener = null;
        super.tearDown();
    }

@@ -131,7 +105,7 @@ public class DisplayInfoControllerTest extends TelephonyTest {
        mCarrierConfigChangeListener.onCarrierConfigChanged(PHONE_ID,
                SubscriptionManager.INVALID_SUBSCRIPTION_ID, TelephonyManager.UNKNOWN_CARRIER_ID,
                TelephonyManager.UNKNOWN_CARRIER_ID);
        waitForLastHandlerAction(mSstHandler.getThreadHandler());
        processAllMessages();
    }

    private static String getPlmnFromCellIdentity(final CellIdentity ci) {
@@ -155,7 +129,7 @@ public class DisplayInfoControllerTest extends TelephonyTest {
                new LteVopsSupportInfo(
                        LteVopsSupportInfo.LTE_STATUS_SUPPORTED,
                        LteVopsSupportInfo.LTE_STATUS_SUPPORTED);
        waitForLastHandlerAction(mSstHandler.getThreadHandler());
        processAllMessages();
        NetworkRegistrationInfo dataResult = new NetworkRegistrationInfo(
                NetworkRegistrationInfo.DOMAIN_PS, AccessNetworkConstants.TRANSPORT_TYPE_WWAN,
                state, dataRat, 0, false, null, cid, getPlmnFromCellIdentity(cid), 1, false, false,
@@ -166,13 +140,13 @@ public class DisplayInfoControllerTest extends TelephonyTest {
                mSst.obtainMessage(
                        ServiceStateTracker.EVENT_POLL_STATE_OPERATOR,
                        new AsyncResult(mSst.mPollingContext, oldOpNamesResult, null)));
        waitForLastHandlerAction(mSstHandler.getThreadHandler());
        processAllMessages();
        // update data reg state to be in service
        mSst.sendMessage(
                mSst.obtainMessage(
                        ServiceStateTracker.EVENT_POLL_STATE_PS_CELLULAR_REGISTRATION,
                        new AsyncResult(mSst.mPollingContext, dataResult, null)));
        waitForLastHandlerAction(mSstHandler.getThreadHandler());
        processAllMessages();
        NetworkRegistrationInfo voiceResult = new NetworkRegistrationInfo(
                NetworkRegistrationInfo.DOMAIN_CS, AccessNetworkConstants.TRANSPORT_TYPE_WWAN,
                state, voiceRat, 0, false, null, cid, getPlmnFromCellIdentity(cid), false, 0, 0, 0);
@@ -180,7 +154,7 @@ public class DisplayInfoControllerTest extends TelephonyTest {
                mSst.obtainMessage(
                        ServiceStateTracker.EVENT_POLL_STATE_CS_CELLULAR_REGISTRATION,
                        new AsyncResult(mSst.mPollingContext, voiceResult, null)));
        waitForLastHandlerAction(mSstHandler.getThreadHandler());
        processAllMessages();
    }

    @Test
+161 −252

File changed.

Preview size limit exceeded, changes collapsed.

+1 −1
Original line number Diff line number Diff line
@@ -120,6 +120,7 @@ public class DataServiceManagerTest extends TelephonyTest {
        Field field = DataService.class.getDeclaredField("mHandler");
        field.setAccessible(true);
        mDataServiceHandler = (Handler) field.get(mCellularDataService);
        monitorTestableLooper(new TestableLooper(mDataServiceHandler.getLooper()));

        ServiceInfo serviceInfo = new ServiceInfo();
        serviceInfo.packageName = "com.android.phone";
@@ -138,7 +139,6 @@ public class DataServiceManagerTest extends TelephonyTest {
    }

    private void waitAndVerifyResult(Message message, int resultCode) {
        waitForLastHandlerAction(mDataServiceHandler);
        processAllMessages();

        ArgumentCaptor<Message> messageCaptor = ArgumentCaptor.forClass(Message.class);
+16 −32
Original line number Diff line number Diff line
@@ -22,65 +22,49 @@ import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertTrue;

import android.os.AsyncResult;
import android.os.HandlerThread;
import android.os.Message;
import android.testing.AndroidTestingRunner;
import android.testing.TestableLooper;

import com.android.internal.telephony.TelephonyTest;

import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;

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

@RunWith(AndroidTestingRunner.class)
@TestableLooper.RunWithLooper
public class SimPhonebookRecordCacheTest extends TelephonyTest {
    private static final int EVENT_PHONEBOOK_RECORDS_RECEIVED = 2;

    private SimPhonebookRecordCache mSimPhonebookRecordCacheUt;
    private SimPhonebookRecordHandler mSimPhonebookRecordHandler;

    private class SimPhonebookRecordHandler extends HandlerThread {
        SimPhonebookRecordHandler(String name) {
            super(name);
        }

        @Override
        public void onLooperPrepared() {
            mSimPhonebookRecordCacheUt =
                    new SimPhonebookRecordCache(mContext, 0, mSimulatedCommands);
            setReady(true);
        }

    };

    @Before
    public void setUp() throws Exception {
        super.setUp(getClass().getSimpleName());
        mSimPhonebookRecordHandler = new SimPhonebookRecordHandler(getClass().getSimpleName());
        mSimPhonebookRecordHandler.start();
        waitUntilReady();
        mSimPhonebookRecordCacheUt =
                new SimPhonebookRecordCache(mContext, 0, mSimulatedCommands);
    }

    @After
    public void tearDown() throws Exception {
        mSimPhonebookRecordHandler.quit();
        mSimPhonebookRecordHandler.join();
        mSimPhonebookRecordHandler = null;
        mSimPhonebookRecordCacheUt = null;
        super.tearDown();
    }

    @Test
    public void testSimPhonebookChangedOnBootup() {
        mSimulatedCommands.notifySimPhonebookChanged();
        waitForLastHandlerAction(mSimPhonebookRecordCacheUt);
        processAllMessages();
        AdnCapacity capacity = mSimPhonebookRecordCacheUt.getAdnCapacity();
        AdnCapacity capVerifer = new AdnCapacity(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
        assertNotNull(capacity);
        assertTrue(capVerifer.equals(capacity));
        mSimulatedCommands.notifySimPhonebookChanged();
        waitForLastHandlerAction(mSimPhonebookRecordCacheUt);
        processAllMessages();
        assertTrue(capacity != mSimPhonebookRecordCacheUt.getAdnCapacity());
        assertTrue(capVerifer.equals(capacity));
    }
@@ -89,10 +73,10 @@ public class SimPhonebookRecordCacheTest extends TelephonyTest {
    public void testGetPhonebookRecords() {
        assertFalse(mSimPhonebookRecordCacheUt.isLoading());
        mSimulatedCommands.notifySimPhonebookChanged();
        waitForLastHandlerAction(mSimPhonebookRecordCacheUt);
        processAllMessages();
        assertFalse(mSimPhonebookRecordCacheUt.isLoading());
        mSimPhonebookRecordCacheUt.requestLoadAllPbRecords(null);
        waitForLastHandlerAction(mSimPhonebookRecordCacheUt);
        processAllMessages();

        mSimPhonebookRecordCacheUt.clear();

@@ -114,14 +98,14 @@ public class SimPhonebookRecordCacheTest extends TelephonyTest {
        assertFalse(mSimPhonebookRecordCacheUt.isLoading());
        mSimPhonebookRecordCacheUt.requestLoadAllPbRecords(null);
        assertTrue(mSimPhonebookRecordCacheUt.isLoading());
        waitForLastHandlerAction(mSimPhonebookRecordCacheUt);
        processAllMessages();
        assertFalse(mSimPhonebookRecordCacheUt.isLoading());
    }

    @Test
    public void testUpdatePhonebookRecord() {
        mSimulatedCommands.notifySimPhonebookChanged();
        waitForLastHandlerAction(mSimPhonebookRecordCacheUt);
        processAllMessages();
        List<AdnRecord> adnRecords = mSimPhonebookRecordCacheUt.getAdnRecords();
        if (mSimPhonebookRecordCacheUt.ENABLE_INFLATE_WITH_EMPTY_RECORDS) {
            assertEquals(adnRecords.size(), 1); // Max ADN from capacity
@@ -133,7 +117,7 @@ public class SimPhonebookRecordCacheTest extends TelephonyTest {
        AdnRecord newAdn = new AdnRecord(IccConstants.EF_ADN, 1, "AB", "123", null, null);
        // add
        mSimPhonebookRecordCacheUt.updateSimPbAdnBySearch(null, newAdn, null);
        waitForLastHandlerAction(mSimPhonebookRecordCacheUt);
        processAllMessages();
        adnRecords = mSimPhonebookRecordCacheUt.getAdnRecords();
        assertEquals(adnRecords.size(), 1);
        AdnRecord oldAdn = adnRecords.get(0);
@@ -143,7 +127,7 @@ public class SimPhonebookRecordCacheTest extends TelephonyTest {
        // update
        newAdn = new AdnRecord(IccConstants.EF_ADN, 1, "ABCD", "123456789", null, null);
        mSimPhonebookRecordCacheUt.updateSimPbAdnBySearch(oldAdn, newAdn, null);
        waitForLastHandlerAction(mSimPhonebookRecordCacheUt);
        processAllMessages();
        adnRecords = mSimPhonebookRecordCacheUt.getAdnRecords();
        assertEquals(adnRecords.size(), 1);
        oldAdn = adnRecords.get(0);
@@ -153,7 +137,7 @@ public class SimPhonebookRecordCacheTest extends TelephonyTest {
        // Delete
        newAdn = new AdnRecord(IccConstants.EF_ADN, 1, null, null, null, null);
        mSimPhonebookRecordCacheUt.updateSimPbAdnBySearch(oldAdn, newAdn, null);
        waitForLastHandlerAction(mSimPhonebookRecordCacheUt);
        processAllMessages();
        adnRecords = mSimPhonebookRecordCacheUt.getAdnRecords();
        if (mSimPhonebookRecordCacheUt.ENABLE_INFLATE_WITH_EMPTY_RECORDS) {
            assertEquals(adnRecords.size(), 1);