diff options
author | Xin Li <delphij@google.com> | 2024-01-17 22:14:29 -0800 |
---|---|---|
committer | Xin Li <delphij@google.com> | 2024-01-17 22:14:29 -0800 |
commit | 1ca089972376a6f0bd26b903652b53d17e280fc2 (patch) | |
tree | 1f74992874f2dd2d2050c6f088f964b5c9806f67 | |
parent | 558e6e482d77b76782f3415129b3c8499ad9b375 (diff) | |
parent | 11f4175a321baf6f2f0a9c42772e09164280223d (diff) | |
download | CellBroadcastService-temp_319669529.tar.gz |
Merge Android 24Q1 Release (ab/11220357)temp_319669529
Bug: 319669529
Merged-In: Ia65e6d8c7b32533d85a2e67582c1a7a35fc1066d
Change-Id: Ic001cf90a6ca9d6fbb32fa4d617ff26cabc05b9d
4 files changed, 26 insertions, 19 deletions
@@ -13,6 +13,7 @@ java_defaults { libs: [ "framework-annotations-lib", "framework-statsd", + "framework-location.stubs.module_lib", "unsupportedappusage", ], sdk_version: "module_current", diff --git a/res/values-mcc310-mnc012/config.xml b/res/values-mcc310-mnc012/config.xml index 73a4e8b..16b960d 100644 --- a/res/values-mcc310-mnc012/config.xml +++ b/res/values-mcc310-mnc012/config.xml @@ -18,7 +18,4 @@ <!-- The maximum waiting time in seconds for location to perform device based geo-fencing --> <integer name="max_location_waiting_time">120</integer> - - <!-- Whether to compare message service category when deduping messages --> - <bool name="duplicate_compare_service_category">false</bool> </resources> diff --git a/tests/src/com/android/cellbroadcastservice/tests/CellBroadcastHandlerTest.java b/tests/src/com/android/cellbroadcastservice/tests/CellBroadcastHandlerTest.java index bf8b661..f1381d4 100644 --- a/tests/src/com/android/cellbroadcastservice/tests/CellBroadcastHandlerTest.java +++ b/tests/src/com/android/cellbroadcastservice/tests/CellBroadcastHandlerTest.java @@ -35,7 +35,7 @@ import android.content.ContentValues; import android.content.Context; import android.content.IIntentSender; import android.content.Intent; -import android.content.res.Resources; +import android.content.res.Configuration; import android.database.Cursor; import android.database.MatrixCursor; import android.net.Uri; @@ -48,6 +48,7 @@ import android.telephony.CbGeoUtils; import android.telephony.SmsCbCmasInfo; import android.telephony.SmsCbLocation; import android.telephony.SmsCbMessage; +import android.telephony.SubscriptionInfo; import android.telephony.SubscriptionManager; import android.telephony.TelephonyManager; import android.test.mock.MockContentProvider; @@ -56,7 +57,6 @@ import android.test.suitebuilder.annotation.SmallTest; import android.testing.AndroidTestingRunner; import android.testing.TestableLooper; import android.text.format.DateUtils; -import android.util.Pair; import android.util.Singleton; import androidx.annotation.NonNull; @@ -79,7 +79,6 @@ import java.io.OutputStream; import java.io.PrintWriter; import java.util.HashMap; import java.util.List; -import java.util.Map; @RunWith(AndroidTestingRunner.class) @TestableLooper.RunWithLooper @@ -89,9 +88,6 @@ public class CellBroadcastHandlerTest extends CellBroadcastServiceTestBase { private TestableLooper mTestbleLooper; - @Mock - private Map<Pair<Context, Integer>, Resources> mMockedResourcesCache; - private CbSendMessageCalculatorFactoryFacade mSendMessageFactory; private CellBroadcastHandler.HandlerHelper mHandlerHelper; @@ -113,6 +109,8 @@ public class CellBroadcastHandlerTest extends CellBroadcastServiceTestBase { @Mock private ISub mISub; + private Configuration mConfiguration; + private class CellBroadcastContentProvider extends MockContentProvider { @Override public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs, @@ -185,10 +183,11 @@ public class CellBroadcastHandlerTest extends CellBroadcastServiceTestBase { ((MockContentResolver) mMockedContext.getContentResolver()).addProvider( Telephony.CellBroadcasts.CONTENT_URI.getAuthority(), new CellBroadcastContentProvider()); - doReturn(true).when(mMockedResourcesCache).containsKey(any()); - doReturn(mMockedResources).when(mMockedResourcesCache).get(any()); - replaceInstance(SubscriptionManager.class, "sResourcesCache", mCellBroadcastHandler, - mMockedResourcesCache); + doReturn("com.android.cellbroadcastservice").when(mMockedContext).getPackageName(); + doReturn(mMockedContext).when(mMockedContext).createConfigurationContext(any()); + doReturn(mMockedResources).when(mMockedContext).getResources(); + mConfiguration = new Configuration(); + doReturn(mConfiguration).when(mMockedResources).getConfiguration(); putResources(com.android.cellbroadcastservice.R.integer.message_expiration_time, (int) DateUtils.DAY_IN_MILLIS); putResources(com.android.cellbroadcastservice.R.bool.duplicate_compare_service_category, @@ -350,29 +349,32 @@ public class CellBroadcastHandlerTest extends CellBroadcastServiceTestBase { @Test @SmallTest public void testGetResources() throws Exception { + SubscriptionInfo mockSubInfo = mock(SubscriptionInfo.class); + doReturn(mockSubInfo).when(mMockedSubscriptionManager).getActiveSubscriptionInfo(anyInt()); + doReturn(001).when(mockSubInfo).getMcc(); + doReturn(01).when(mockSubInfo).getMnc(); + // verify not to call SubscriptionManager#getResourcesForSubId for DEFAULT ID mCellBroadcastHandler.getResources(SubscriptionManager.DEFAULT_SUBSCRIPTION_ID); - verify(mMockedResourcesCache, never()).containsKey(any()); + verify(mMockedContext, never()).createConfigurationContext(any()); verify(mMockedContext, times(1)).getResources(); // verify not to call SubscriptionManager#getResourcesForSubId for INVALID ID mCellBroadcastHandler.getResources(SubscriptionManager.INVALID_SUBSCRIPTION_ID); - verify(mMockedResourcesCache, never()).containsKey(any()); + verify(mMockedContext, never()).createConfigurationContext(any()); verify(mMockedContext, times(2)).getResources(); // verify to call SubscriptionManager#getResourcesForSubId for normal sub id mCellBroadcastHandler.getResources(SubscriptionManager.DEFAULT_SUBSCRIPTION_ID - 1); - verify(mMockedResourcesCache, times(1)).containsKey(any()); - verify(mMockedContext, times(2)).getResources(); + verify(mMockedContext, times(1)).createConfigurationContext(any()); // verify to call SubscriptionManager#getResourcesForSubId again for the same sub mCellBroadcastHandler.getResources(SubscriptionManager.DEFAULT_SUBSCRIPTION_ID - 1); - verify(mMockedResourcesCache, times(2)).containsKey(any()); - verify(mMockedContext, times(2)).getResources(); + verify(mMockedContext, times(1)).createConfigurationContext(any()); } @Test diff --git a/tests/src/com/android/cellbroadcastservice/tests/GsmCellBroadcastHandlerTest.java b/tests/src/com/android/cellbroadcastservice/tests/GsmCellBroadcastHandlerTest.java index 951f4f8..5ac5823 100644 --- a/tests/src/com/android/cellbroadcastservice/tests/GsmCellBroadcastHandlerTest.java +++ b/tests/src/com/android/cellbroadcastservice/tests/GsmCellBroadcastHandlerTest.java @@ -32,6 +32,7 @@ import static org.mockito.Mockito.verify; import android.content.ContentValues; import android.content.Context; import android.content.Intent; +import android.content.res.Configuration; import android.content.res.Resources; import android.database.Cursor; import android.database.MatrixCursor; @@ -96,6 +97,8 @@ public class GsmCellBroadcastHandlerTest extends CellBroadcastServiceTestBase { private CellBroadcastHandlerTest.CbSendMessageCalculatorFactoryFacade mSendMessageFactory; + private Configuration mConfiguration; + private class CellBroadcastContentProvider extends MockContentProvider { @Override public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs, @@ -189,6 +192,10 @@ public class GsmCellBroadcastHandlerTest extends CellBroadcastServiceTestBase { ((MockContentResolver) mMockedContext.getContentResolver()).addProvider( Settings.AUTHORITY, new SettingsProvider()); doReturn(mMockedContext).when(mMockedContext).createConfigurationContext(any()); + doReturn("com.android.cellbroadcastservice").when(mMockedContext).getPackageName(); + doReturn(mMockedResources).when(mMockedContext).getResources(); + mConfiguration = new Configuration(); + doReturn(mConfiguration).when(mMockedResources).getConfiguration(); doReturn(true).when(mMockedResourcesCache).containsKey(anyInt()); doReturn(mMockedResources).when(mMockedResourcesCache).get(anyInt()); putResources(com.android.cellbroadcastservice.R.integer.message_expiration_time, 86400000); |