aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2022-05-05 03:07:25 +0000
committerAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2022-05-05 03:07:25 +0000
commite5b4dbbb0a4c0f6a9d624eb6a223227958e5066b (patch)
tree538649dcb1f0a62b4ad68bbd68e963482d7ebaed
parent540b0bcabc0aa87d7a6e7fb0a433ca26c771e4f9 (diff)
parentd5b08f9b046c432bcfaca6f81dcf42d32f7b54ea (diff)
downloadims-e5b4dbbb0a4c0f6a9d624eb6a223227958e5066b.tar.gz
Snap for 8543353 from d5b08f9b046c432bcfaca6f81dcf42d32f7b54ea to tm-qpr1-release
Change-Id: I8230e504dc9340216076ec9d90c3928090cfca52
-rw-r--r--src/java/com/android/ims/ImsManager.java38
-rw-r--r--src/java/com/android/ims/rcs/uce/presence/publish/PublishProcessor.java9
-rw-r--r--src/java/com/android/ims/rcs/uce/util/UceUtils.java8
-rw-r--r--tests/src/com/android/ims/ImsManagerTest.java171
-rw-r--r--tests/src/com/android/ims/rcs/uce/presence/publish/PublishProcessorTest.java18
5 files changed, 47 insertions, 197 deletions
diff --git a/src/java/com/android/ims/ImsManager.java b/src/java/com/android/ims/ImsManager.java
index e212ee0b..257aef91 100644
--- a/src/java/com/android/ims/ImsManager.java
+++ b/src/java/com/android/ims/ImsManager.java
@@ -849,12 +849,7 @@ public class ImsManager implements FeatureUpdates {
* Indicates whether VoLTE is provisioned on this slot.
*/
public boolean isVolteProvisionedOnDevice() {
- // check new carrier config first KEY_MMTEL_REQUIRES_PROVISIONING_BUNDLE
- // if that returns false, check deprecated carrier config
- // KEY_CARRIER_VOLTE_PROVISIONING_REQUIRED_BOOL
- if (isMmTelProvisioningRequired(CAPABILITY_TYPE_VOICE, REGISTRATION_TECH_LTE) ||
- getBooleanCarrierConfig(
- CarrierConfigManager.KEY_CARRIER_VOLTE_PROVISIONING_REQUIRED_BOOL)) {
+ if (isMmTelProvisioningRequired(CAPABILITY_TYPE_VOICE, REGISTRATION_TECH_LTE)) {
return isVolteProvisioned();
}
@@ -865,12 +860,7 @@ public class ImsManager implements FeatureUpdates {
* Indicates whether EAB is provisioned on this slot.
*/
public boolean isEabProvisionedOnDevice() {
- // check new carrier config first KEY_RCS_REQUIRES_PROVISIONING_BUNDLE
- // if that returns false, check deprecated carrier config
- // KEY_CARRIER_RCS_PROVISIONING_REQUIRED_BOOL
- if (isRcsProvisioningRequired(CAPABILITY_TYPE_PRESENCE_UCE, REGISTRATION_TECH_LTE) ||
- getBooleanCarrierConfig(
- CarrierConfigManager.KEY_CARRIER_RCS_PROVISIONING_REQUIRED_BOOL)) {
+ if (isRcsProvisioningRequired(CAPABILITY_TYPE_PRESENCE_UCE, REGISTRATION_TECH_LTE)) {
return isEabProvisioned();
}
@@ -910,12 +900,7 @@ public class ImsManager implements FeatureUpdates {
}
}
- // check new carrier config first KEY_MMTEL_REQUIRES_PROVISIONING_BUNDLE
- // if that returns false, check deprecated carrier config
- // KEY_CARRIER_VOLTE_PROVISIONING_REQUIRED_BOOL
- if (isMmTelProvisioningRequired(CAPABILITY_TYPE_VOICE, REGISTRATION_TECH_IWLAN)
- || getBooleanCarrierConfig(
- CarrierConfigManager.KEY_CARRIER_VOLTE_PROVISIONING_REQUIRED_BOOL)) {
+ if (isMmTelProvisioningRequired(CAPABILITY_TYPE_VOICE, REGISTRATION_TECH_IWLAN)) {
return isWfcProvisioned();
}
@@ -942,12 +927,7 @@ public class ImsManager implements FeatureUpdates {
* Indicates whether VT is provisioned on slot.
*/
public boolean isVtProvisionedOnDevice() {
- // check new carrier config first KEY_MMTEL_REQUIRES_PROVISIONING_BUNDLE
- // if that returns false, check deprecated carrier config
- // KEY_CARRIER_VOLTE_PROVISIONING_REQUIRED_BOOL
- if (isMmTelProvisioningRequired(CAPABILITY_TYPE_VIDEO, REGISTRATION_TECH_LTE) ||
- getBooleanCarrierConfig(
- CarrierConfigManager.KEY_CARRIER_VOLTE_PROVISIONING_REQUIRED_BOOL)) {
+ if (isMmTelProvisioningRequired(CAPABILITY_TYPE_VIDEO, REGISTRATION_TECH_LTE)) {
return isVtProvisioned();
}
@@ -1653,7 +1633,7 @@ public class ImsManager implements FeatureUpdates {
}
try {
- return iTelephony.getImsProvisioningStatusForCapability(subId, capability, tech);
+ return iTelephony.getImsProvisioningStatusForCapability(subId, capability, tech);
} catch (RemoteException e) {
logw("getImsProvisionedBoolNoException: operation failed for capability=" + capability
+ ". Exception:" + e.getMessage() + ". Returning false.");
@@ -1679,7 +1659,7 @@ public class ImsManager implements FeatureUpdates {
}
try {
- return iTelephony.getRcsProvisioningStatusForCapability(subId, capability, tech);
+ return iTelephony.getRcsProvisioningStatusForCapability(subId, capability, tech);
} catch (RemoteException e) {
logw("getRcsProvisionedBoolNoException: operation failed for capability=" + capability
+ ". Exception:" + e.getMessage() + ". Returning false.");
@@ -3175,8 +3155,8 @@ public class ImsManager implements FeatureUpdates {
boolean required = false;
try {
- required |= iTelephony.isProvisioningRequiredForCapability(subId, capability,
- tech);
+ required = iTelephony.isProvisioningRequiredForCapability(subId, capability,
+ tech);
} catch (RemoteException e) {
logw("isMmTelProvisioningRequired couldn't reach telephony!");
}
@@ -3200,7 +3180,7 @@ public class ImsManager implements FeatureUpdates {
boolean required = false;
try {
- required |= iTelephony.isRcsProvisioningRequiredForCapability(subId, capability,
+ required = iTelephony.isRcsProvisioningRequiredForCapability(subId, capability,
tech);
} catch (RemoteException e) {
logw("isRcsProvisioningRequired couldn't reach telephony!");
diff --git a/src/java/com/android/ims/rcs/uce/presence/publish/PublishProcessor.java b/src/java/com/android/ims/rcs/uce/presence/publish/PublishProcessor.java
index d8531a70..d87eea9e 100644
--- a/src/java/com/android/ims/rcs/uce/presence/publish/PublishProcessor.java
+++ b/src/java/com/android/ims/rcs/uce/presence/publish/PublishProcessor.java
@@ -30,10 +30,10 @@ import android.util.LocalLog;
import android.util.Log;
import com.android.ims.RcsFeatureManager;
+import com.android.ims.rcs.uce.UceStatsWriter;
import com.android.ims.rcs.uce.presence.pidfparser.PidfParser;
import com.android.ims.rcs.uce.presence.publish.PublishController.PublishControllerCallback;
import com.android.ims.rcs.uce.presence.publish.PublishController.PublishTriggerType;
-import com.android.ims.rcs.uce.UceStatsWriter;
import com.android.ims.rcs.uce.util.UceUtils;
import com.android.internal.annotations.VisibleForTesting;
@@ -199,7 +199,7 @@ public class PublishProcessor {
// Check if it has provisioned. When the provisioning changes, a new publish request will
// be triggered.
- if (!UceUtils.isEabProvisioned(mContext, mSubId)) {
+ if (!isEabProvisioned()) {
logd("isPublishAllowed: NOT provisioned");
return false;
}
@@ -509,6 +509,11 @@ public class PublishProcessor {
mProcessorState = processorState;
}
+ @VisibleForTesting
+ protected boolean isEabProvisioned() {
+ return UceUtils.isEabProvisioned(mContext, mSubId);
+ }
+
private void logd(String log) {
Log.d(LOG_TAG, getLogPrefix().append(log).toString());
}
diff --git a/src/java/com/android/ims/rcs/uce/util/UceUtils.java b/src/java/com/android/ims/rcs/uce/util/UceUtils.java
index ae98393a..58796983 100644
--- a/src/java/com/android/ims/rcs/uce/util/UceUtils.java
+++ b/src/java/com/android/ims/rcs/uce/util/UceUtils.java
@@ -24,7 +24,9 @@ import android.preference.PreferenceManager;
import android.provider.BlockedNumberContract;
import android.telephony.CarrierConfigManager;
import android.telephony.SubscriptionManager;
+import android.telephony.ims.ImsRcsManager;
import android.telephony.ims.ProvisioningManager;
+import android.telephony.ims.stub.ImsRegistrationImplBase;
import android.text.TextUtils;
import android.util.Log;
@@ -100,9 +102,9 @@ public class UceUtils {
}
try {
ProvisioningManager manager = ProvisioningManager.createForSubscriptionId(subId);
- isProvisioned = manager.getProvisioningIntValue(
- ProvisioningManager.KEY_EAB_PROVISIONING_STATUS)
- == ProvisioningManager.PROVISIONING_VALUE_ENABLED;
+ isProvisioned = manager.getRcsProvisioningStatusForCapability(
+ ImsRcsManager.CAPABILITY_TYPE_PRESENCE_UCE,
+ ImsRegistrationImplBase.REGISTRATION_TECH_LTE);
} catch (Exception e) {
Log.w(LOG_TAG, "isEabProvisioned: exception=" + e.getMessage());
}
diff --git a/tests/src/com/android/ims/ImsManagerTest.java b/tests/src/com/android/ims/ImsManagerTest.java
index aaa332c6..42f110dc 100644
--- a/tests/src/com/android/ims/ImsManagerTest.java
+++ b/tests/src/com/android/ims/ImsManagerTest.java
@@ -308,106 +308,23 @@ public class ImsManagerTest extends ImsTestBase {
}
@Test
- public void testGetProvisionedValues() throws Exception {
- ImsManager imsManager = getImsManagerAndInitProvisionedValues();
-
- assertEquals(true, imsManager.isWfcProvisionedOnDevice());
- verify(mITelephony, times(1)).getImsProvisioningStatusForCapability(
- anyInt(),
- eq(MmTelFeature.MmTelCapabilities.CAPABILITY_TYPE_VOICE),
- eq(ImsRegistrationImplBase.REGISTRATION_TECH_IWLAN));
- clearInvocations(mITelephony);
-
- assertEquals(true, imsManager.isVtProvisionedOnDevice());
- verify(mITelephony, times(1)).getImsProvisioningStatusForCapability(
- anyInt(),
- eq(MmTelFeature.MmTelCapabilities.CAPABILITY_TYPE_VIDEO),
- eq(ImsRegistrationImplBase.REGISTRATION_TECH_LTE));
- clearInvocations(mITelephony);
-
- assertEquals(true, imsManager.isVolteProvisionedOnDevice());
- verify(mITelephony, times(1)).getImsProvisioningStatusForCapability(
- anyInt(),
- eq(MmTelFeature.MmTelCapabilities.CAPABILITY_TYPE_VOICE),
- eq(ImsRegistrationImplBase.REGISTRATION_TECH_LTE));
- clearInvocations(mITelephony);
-
- // If we call get again, times should still be one because the value should be fetched
- // from cache.
- assertEquals(true, imsManager.isWfcProvisionedOnDevice());
- verify(mITelephony, times(1)).getImsProvisioningStatusForCapability(
- anyInt(),
- eq(MmTelFeature.MmTelCapabilities.CAPABILITY_TYPE_VOICE),
- eq(ImsRegistrationImplBase.REGISTRATION_TECH_IWLAN));
- clearInvocations(mITelephony);
-
- assertEquals(true, imsManager.isVtProvisionedOnDevice());
- verify(mITelephony, times(1)).getImsProvisioningStatusForCapability(
- anyInt(),
- eq(MmTelFeature.MmTelCapabilities.CAPABILITY_TYPE_VIDEO),
- eq(ImsRegistrationImplBase.REGISTRATION_TECH_LTE));
- clearInvocations(mITelephony);
-
- assertEquals(true, imsManager.isVolteProvisionedOnDevice());
- verify(mITelephony, times(1)).getImsProvisioningStatusForCapability(
- anyInt(),
- eq(MmTelFeature.MmTelCapabilities.CAPABILITY_TYPE_VOICE),
- eq(ImsRegistrationImplBase.REGISTRATION_TECH_LTE));
- clearInvocations(mITelephony);
-
- assertEquals(true, imsManager.isEabProvisionedOnDevice());
- verify(mITelephony, times(1)).getRcsProvisioningStatusForCapability(
- anyInt(),
- eq(RcsFeature.RcsImsCapabilities.CAPABILITY_TYPE_PRESENCE_UCE),
- eq(ImsRegistrationImplBase.REGISTRATION_TECH_LTE));
- }
-
- @Test
public void testGetProvisionedValuesForWfc() throws Exception {
ImsManager imsManager = getImsManagerAndInitProvisionedValues();
- // defined : KEY_MMTEL_REQUIRES_PROVISIONING_BUNDLE
- // not defined : KEY_CARRIER_VOLTE_PROVISIONING_REQUIRED_BOOL
mMmTelProvisioningRequired = true;
- mBundle.putBoolean(CarrierConfigManager.KEY_CARRIER_VOLTE_PROVISIONING_REQUIRED_BOOL,
- false);
assertEquals(true, imsManager.isWfcProvisionedOnDevice());
- verify(mITelephony, times(1)).getImsProvisioningStatusForCapability(
- anyInt(),
- eq(MmTelFeature.MmTelCapabilities.CAPABILITY_TYPE_VOICE),
- eq(ImsRegistrationImplBase.REGISTRATION_TECH_IWLAN));
verify(mITelephony, times(1)).
isProvisioningRequiredForCapability(anyInt(),
eq(MmTelFeature.MmTelCapabilities.CAPABILITY_TYPE_VOICE),
eq(ImsRegistrationImplBase.REGISTRATION_TECH_IWLAN));
- clearInvocations(mITelephony);
-
- // defined : KEY_MMTEL_REQUIRES_PROVISIONING_BUNDLE
- // not defined : KEY_CARRIER_VOLTE_PROVISIONING_REQUIRED_BOOL
- mMmTelProvisioningRequired = false;
- mBundle.putBoolean(CarrierConfigManager.KEY_CARRIER_VOLTE_PROVISIONING_REQUIRED_BOOL,
- true);
- assertEquals(true, imsManager.isWfcProvisionedOnDevice());
verify(mITelephony, times(1)).getImsProvisioningStatusForCapability(
anyInt(),
eq(MmTelFeature.MmTelCapabilities.CAPABILITY_TYPE_VOICE),
eq(ImsRegistrationImplBase.REGISTRATION_TECH_IWLAN));
- verify(mITelephony, times(1)).
- isProvisioningRequiredForCapability(anyInt(),
- eq(MmTelFeature.MmTelCapabilities.CAPABILITY_TYPE_VOICE),
- eq(ImsRegistrationImplBase.REGISTRATION_TECH_IWLAN));
clearInvocations(mITelephony);
- // defined : KEY_MMTEL_REQUIRES_PROVISIONING_BUNDLE
- // not defined : KEY_CARRIER_VOLTE_PROVISIONING_REQUIRED_BOOL
mMmTelProvisioningRequired = false;
- mBundle.putBoolean(CarrierConfigManager.KEY_CARRIER_VOLTE_PROVISIONING_REQUIRED_BOOL,
- false);
assertEquals(true, imsManager.isWfcProvisionedOnDevice());
- verify(mITelephony, never()).getImsProvisioningStatusForCapability(
- anyInt(),
- eq(MmTelFeature.MmTelCapabilities.CAPABILITY_TYPE_VOICE),
- eq(ImsRegistrationImplBase.REGISTRATION_TECH_IWLAN));
verify(mITelephony, times(1)).
isProvisioningRequiredForCapability(anyInt(),
eq(MmTelFeature.MmTelCapabilities.CAPABILITY_TYPE_VOICE),
@@ -419,46 +336,19 @@ public class ImsManagerTest extends ImsTestBase {
public void testGetProvisionedValuesForVt() throws Exception {
ImsManager imsManager = getImsManagerAndInitProvisionedValues();
- // defined : KEY_MMTEL_REQUIRES_PROVISIONING_BUNDLE
- // not defined : KEY_CARRIER_VOLTE_PROVISIONING_REQUIRED_BOOL
mMmTelProvisioningRequired = true;
- mBundle.putBoolean(CarrierConfigManager.KEY_CARRIER_VOLTE_PROVISIONING_REQUIRED_BOOL,
- false);
assertEquals(true, imsManager.isVtProvisionedOnDevice());
- verify(mITelephony, times(1)).getImsProvisioningStatusForCapability(
- anyInt(),
- eq(MmTelFeature.MmTelCapabilities.CAPABILITY_TYPE_VIDEO),
- eq(ImsRegistrationImplBase.REGISTRATION_TECH_LTE));
verify(mITelephony, times(1)).isProvisioningRequiredForCapability(anyInt(),
eq(MmTelFeature.MmTelCapabilities.CAPABILITY_TYPE_VIDEO),
eq(ImsRegistrationImplBase.REGISTRATION_TECH_LTE));
- clearInvocations(mITelephony);
-
- // not defined : KEY_MMTEL_REQUIRES_PROVISIONING_BUNDLE
- // defined : KEY_CARRIER_VOLTE_PROVISIONING_REQUIRED_BOOL
- mMmTelProvisioningRequired = false;
- mBundle.putBoolean(CarrierConfigManager.KEY_CARRIER_VOLTE_PROVISIONING_REQUIRED_BOOL,
- true);
- assertEquals(true, imsManager.isVtProvisionedOnDevice());
verify(mITelephony, times(1)).getImsProvisioningStatusForCapability(
anyInt(),
eq(MmTelFeature.MmTelCapabilities.CAPABILITY_TYPE_VIDEO),
eq(ImsRegistrationImplBase.REGISTRATION_TECH_LTE));
- verify(mITelephony, times(1)).isProvisioningRequiredForCapability(anyInt(),
- eq(MmTelFeature.MmTelCapabilities.CAPABILITY_TYPE_VIDEO),
- eq(ImsRegistrationImplBase.REGISTRATION_TECH_LTE));
clearInvocations(mITelephony);
- // not defined : KEY_MMTEL_REQUIRES_PROVISIONING_BUNDLE
- // not defined : KEY_CARRIER_VOLTE_PROVISIONING_REQUIRED_BOOL
mMmTelProvisioningRequired = false;
- mBundle.putBoolean(CarrierConfigManager.KEY_CARRIER_VOLTE_PROVISIONING_REQUIRED_BOOL,
- false);
assertEquals(true, imsManager.isVtProvisionedOnDevice());
- verify(mITelephony, never()).getImsProvisioningStatusForCapability(
- anyInt(),
- eq(MmTelFeature.MmTelCapabilities.CAPABILITY_TYPE_VIDEO),
- eq(ImsRegistrationImplBase.REGISTRATION_TECH_LTE));
verify(mITelephony, times(1)).isProvisioningRequiredForCapability(anyInt(),
eq(MmTelFeature.MmTelCapabilities.CAPABILITY_TYPE_VIDEO),
eq(ImsRegistrationImplBase.REGISTRATION_TECH_LTE));
@@ -469,46 +359,19 @@ public class ImsManagerTest extends ImsTestBase {
public void testGetProvisionedValuesForVolte() throws Exception {
ImsManager imsManager = getImsManagerAndInitProvisionedValues();
- // defined : KEY_MMTEL_REQUIRES_PROVISIONING_BUNDLE
- // not defined : KEY_CARRIER_VOLTE_PROVISIONING_REQUIRED_BOOL
mMmTelProvisioningRequired = true;
- mBundle.putBoolean(CarrierConfigManager.KEY_CARRIER_VOLTE_PROVISIONING_REQUIRED_BOOL,
- false);
assertEquals(true, imsManager.isVolteProvisionedOnDevice());
- verify(mITelephony, times(1)).getImsProvisioningStatusForCapability(
- anyInt(),
- eq(MmTelFeature.MmTelCapabilities.CAPABILITY_TYPE_VOICE),
- eq(ImsRegistrationImplBase.REGISTRATION_TECH_LTE));
verify(mITelephony, times(1)).isProvisioningRequiredForCapability(anyInt(),
eq(MmTelFeature.MmTelCapabilities.CAPABILITY_TYPE_VOICE),
eq(ImsRegistrationImplBase.REGISTRATION_TECH_LTE));
- clearInvocations(mITelephony);
-
- // not defined : KEY_MMTEL_REQUIRES_PROVISIONING_BUNDLE
- // defined : KEY_CARRIER_VOLTE_PROVISIONING_REQUIRED_BOOL
- mMmTelProvisioningRequired = false;
- mBundle.putBoolean(CarrierConfigManager.KEY_CARRIER_VOLTE_PROVISIONING_REQUIRED_BOOL,
- true);
- assertEquals(true, imsManager.isVolteProvisionedOnDevice());
verify(mITelephony, times(1)).getImsProvisioningStatusForCapability(
anyInt(),
eq(MmTelFeature.MmTelCapabilities.CAPABILITY_TYPE_VOICE),
eq(ImsRegistrationImplBase.REGISTRATION_TECH_LTE));
- verify(mITelephony, times(1)).isProvisioningRequiredForCapability(anyInt(),
- eq(MmTelFeature.MmTelCapabilities.CAPABILITY_TYPE_VOICE),
- eq(ImsRegistrationImplBase.REGISTRATION_TECH_LTE));
clearInvocations(mITelephony);
- // not defined : KEY_MMTEL_REQUIRES_PROVISIONING_BUNDLE
- // not defined : KEY_CARRIER_VOLTE_PROVISIONING_REQUIRED_BOOL
mMmTelProvisioningRequired = false;
- mBundle.putBoolean(CarrierConfigManager.KEY_CARRIER_VOLTE_PROVISIONING_REQUIRED_BOOL,
- false);
assertEquals(true, imsManager.isVolteProvisionedOnDevice());
- verify(mITelephony, never()).getImsProvisioningStatusForCapability(
- anyInt(),
- eq(MmTelFeature.MmTelCapabilities.CAPABILITY_TYPE_VOICE),
- eq(ImsRegistrationImplBase.REGISTRATION_TECH_LTE));
verify(mITelephony, times(1)).isProvisioningRequiredForCapability(anyInt(),
eq(MmTelFeature.MmTelCapabilities.CAPABILITY_TYPE_VOICE),
eq(ImsRegistrationImplBase.REGISTRATION_TECH_LTE));
@@ -519,43 +382,19 @@ public class ImsManagerTest extends ImsTestBase {
public void testGetProvisionedValuesForEab() throws Exception {
ImsManager imsManager = getImsManagerAndInitProvisionedValues();
- // defined : KEY_RCS_REQUIRES_PROVISIONING_BUNDLE
- // not defined : KEY_CARRIER_RCS_PROVISIONING_REQUIRED_BOOL
mRcsProvisioningRequired = true;
- mBundle.putBoolean(CarrierConfigManager.KEY_CARRIER_RCS_PROVISIONING_REQUIRED_BOOL, false);
assertEquals(true, imsManager.isEabProvisionedOnDevice());
- verify(mITelephony, times(1)).getRcsProvisioningStatusForCapability(
- anyInt(),
- eq(RcsFeature.RcsImsCapabilities.CAPABILITY_TYPE_PRESENCE_UCE),
- eq(ImsRegistrationImplBase.REGISTRATION_TECH_LTE));
verify(mITelephony, times(1)).isRcsProvisioningRequiredForCapability(anyInt(),
eq(RcsFeature.RcsImsCapabilities.CAPABILITY_TYPE_PRESENCE_UCE),
eq(ImsRegistrationImplBase.REGISTRATION_TECH_LTE));
- clearInvocations(mITelephony);
-
- // not defined : KEY_RCS_REQUIRES_PROVISIONING_BUNDLE
- // defined : KEY_CARRIER_RCS_PROVISIONING_REQUIRED_BOOL
- mRcsProvisioningRequired = false;
- mBundle.putBoolean(CarrierConfigManager.KEY_CARRIER_RCS_PROVISIONING_REQUIRED_BOOL, true);
- assertEquals(true, imsManager.isEabProvisionedOnDevice());
verify(mITelephony, times(1)).getRcsProvisioningStatusForCapability(
anyInt(),
eq(RcsFeature.RcsImsCapabilities.CAPABILITY_TYPE_PRESENCE_UCE),
eq(ImsRegistrationImplBase.REGISTRATION_TECH_LTE));
- verify(mITelephony, times(1)).isRcsProvisioningRequiredForCapability(anyInt(),
- eq(RcsFeature.RcsImsCapabilities.CAPABILITY_TYPE_PRESENCE_UCE),
- eq(ImsRegistrationImplBase.REGISTRATION_TECH_LTE));
clearInvocations(mITelephony);
- // not defined : KEY_RCS_REQUIRES_PROVISIONING_BUNDLE
- // not defined : KEY_CARRIER_RCS_PROVISIONING_REQUIRED_BOOL
mRcsProvisioningRequired = false;
- mBundle.putBoolean(CarrierConfigManager.KEY_CARRIER_RCS_PROVISIONING_REQUIRED_BOOL, false);
assertEquals(true, imsManager.isEabProvisionedOnDevice());
- verify(mITelephony, never()).getRcsProvisioningStatusForCapability(
- anyInt(),
- eq(RcsFeature.RcsImsCapabilities.CAPABILITY_TYPE_PRESENCE_UCE),
- eq(ImsRegistrationImplBase.REGISTRATION_TECH_LTE));
verify(mITelephony, times(1)).isRcsProvisioningRequiredForCapability(anyInt(),
eq(RcsFeature.RcsImsCapabilities.CAPABILITY_TYPE_PRESENCE_UCE),
eq(ImsRegistrationImplBase.REGISTRATION_TECH_LTE));
@@ -566,8 +405,12 @@ public class ImsManagerTest extends ImsTestBase {
public void testSetProvisionedValues() throws Exception {
ImsManager imsManager = getImsManagerAndInitProvisionedValues();
+ mMmTelProvisioningRequired = true;
assertEquals(true, imsManager.isWfcProvisionedOnDevice());
-
+ verify(mITelephony, times(1)).
+ isProvisioningRequiredForCapability(anyInt(),
+ eq(MmTelFeature.MmTelCapabilities.CAPABILITY_TYPE_VOICE),
+ eq(ImsRegistrationImplBase.REGISTRATION_TECH_IWLAN));
verify(mITelephony, times(1)).getImsProvisioningStatusForCapability(
anyInt(),
eq(MmTelFeature.MmTelCapabilities.CAPABILITY_TYPE_VOICE),
@@ -597,8 +440,12 @@ public class ImsManagerTest extends ImsTestBase {
public void testEabSetProvisionedValues() throws Exception {
ImsManager imsManager = getImsManagerAndInitProvisionedValues();
+ mRcsProvisioningRequired = true;
assertEquals(true, imsManager.isEabProvisionedOnDevice());
+ verify(mITelephony, times(1)).isRcsProvisioningRequiredForCapability(anyInt(),
+ eq(RcsFeature.RcsImsCapabilities.CAPABILITY_TYPE_PRESENCE_UCE),
+ eq(ImsRegistrationImplBase.REGISTRATION_TECH_LTE));
verify(mITelephony, times(1)).getRcsProvisioningStatusForCapability(
anyInt(),
eq(RcsFeature.RcsImsCapabilities.CAPABILITY_TYPE_PRESENCE_UCE),
diff --git a/tests/src/com/android/ims/rcs/uce/presence/publish/PublishProcessorTest.java b/tests/src/com/android/ims/rcs/uce/presence/publish/PublishProcessorTest.java
index f632ca5b..4e8cdfdc 100644
--- a/tests/src/com/android/ims/rcs/uce/presence/publish/PublishProcessorTest.java
+++ b/tests/src/com/android/ims/rcs/uce/presence/publish/PublishProcessorTest.java
@@ -17,6 +17,7 @@
package com.android.ims.rcs.uce.presence.publish;
import static android.telephony.ims.RcsContactPresenceTuple.TUPLE_BASIC_STATUS_OPEN;
+
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.anyInt;
import static org.mockito.ArgumentMatchers.anyLong;
@@ -25,6 +26,7 @@ import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.never;
import static org.mockito.Mockito.verify;
+import android.content.Context;
import android.net.Uri;
import android.telephony.ims.RcsContactPresenceTuple;
import android.telephony.ims.RcsContactUceCapability;
@@ -58,6 +60,20 @@ public class PublishProcessorTest extends ImsTestBase {
private int mSub = 1;
private long mTaskId = 1L;
+ public static class TestPublishProcessor extends PublishProcessor {
+ public TestPublishProcessor(Context context, int subId,
+ DeviceCapabilityInfo capabilityInfo,
+ PublishControllerCallback publishCtrlCallback,
+ UceStatsWriter instance) {
+ super(context, subId, capabilityInfo, publishCtrlCallback, instance);
+ }
+
+ @Override
+ protected boolean isEabProvisioned() {
+ return true;
+ }
+ }
+
@Before
public void setUp() throws Exception {
super.setUp();
@@ -254,7 +270,7 @@ public class PublishProcessorTest extends ImsTestBase {
}
private PublishProcessor getPublishProcessor() {
- PublishProcessor publishProcessor = new PublishProcessor(mContext, mSub,
+ PublishProcessor publishProcessor = new TestPublishProcessor(mContext, mSub,
mDeviceCapabilities, mPublishCtrlCallback, mUceStatsWriter);
publishProcessor.setProcessorState(mProcessorState);
publishProcessor.onRcsConnected(mRcsFeatureManager);