[automerger skipped] Merge Android U (ab/10368041) am: ebb5268f24 -s ours am: a80621052c -s ours am: 7d2235da70 -s ours am: 33d8530233 -s ours
am skip reason: Merged-In Ic3cd0b08fb0046a82ad78cf1748f657e12fd8ef1 with SHA-1 7ac550dcb6 is already in history
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/modules/CellBroadcastService/+/24181622
Change-Id: I15aeaf8026234cd43525391795f0471dc97c3f14
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
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.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.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.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.PrintWriter;
import java.util.HashMap;
import java.util.List;
-import java.util.Map;
@RunWith(AndroidTestingRunner.class)
@TestableLooper.RunWithLooper
@@ -89,9 +88,6 @@
private TestableLooper mTestbleLooper;
- @Mock
- private Map<Pair<Context, Integer>, Resources> mMockedResourcesCache;
-
private CbSendMessageCalculatorFactoryFacade mSendMessageFactory;
private CellBroadcastHandler.HandlerHelper mHandlerHelper;
@@ -113,6 +109,8 @@
@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 @@
((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 @@
@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 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 @@
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 @@
((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);