diff --git a/src/com/android/settings/network/apn/ApnStatus.kt b/src/com/android/settings/network/apn/ApnStatus.kt index 2f41f238d38..dc50452a995 100644 --- a/src/com/android/settings/network/apn/ApnStatus.kt +++ b/src/com/android/settings/network/apn/ApnStatus.kt @@ -70,6 +70,8 @@ data class ApnData( Telephony.Carriers.ROAMING_PROTOCOL to context.convertOptions2Protocol(apnRoaming), Telephony.Carriers.TYPE to apnType, Telephony.Carriers.NETWORK_TYPE_BITMASK to networkType, + // Copy network type into lingering network type. + Telephony.Carriers.LINGERING_NETWORK_TYPE_BITMASK to networkType, Telephony.Carriers.CARRIER_ENABLED to apnEnable, Telephony.Carriers.EDITED_STATUS to Telephony.Carriers.USER_EDITED, ) diff --git a/tests/spa_unit/src/com/android/settings/network/apn/ApnStatusTest.kt b/tests/spa_unit/src/com/android/settings/network/apn/ApnStatusTest.kt index 6b61eba0f9b..fcfa13b8a75 100644 --- a/tests/spa_unit/src/com/android/settings/network/apn/ApnStatusTest.kt +++ b/tests/spa_unit/src/com/android/settings/network/apn/ApnStatusTest.kt @@ -16,9 +16,12 @@ package com.android.settings.network.apn +import android.content.Context import android.os.PersistableBundle import android.provider.Telephony import android.telephony.CarrierConfigManager +import android.telephony.TelephonyManager +import androidx.test.core.app.ApplicationProvider import androidx.test.ext.junit.runners.AndroidJUnit4 import com.google.common.truth.Truth.assertThat import org.junit.Test @@ -46,6 +49,8 @@ class ApnStatusTest { } doReturn p } + private val context: Context = ApplicationProvider.getApplicationContext() + @Test fun getCarrierCustomizedConfig_test() { assert(getCarrierCustomizedConfig(apnData, configManager).isAddApnAllowed) @@ -81,4 +86,14 @@ class ApnStatusTest { assertThat(apnData.isFieldEnabled(Telephony.Carriers.PROXY)).isFalse() assertThat(apnData.isFieldEnabled(Telephony.Carriers.APN)).isTrue() } + + @Test + fun getContentValueMap_copyNetworkTypeIntoLingeringNetworkType() { + val apnData = ApnData(networkType = TelephonyManager.NETWORK_TYPE_NR.toLong()) + + val contentValueMap = apnData.getContentValueMap(context) + + assertThat(contentValueMap.getValue(Telephony.Carriers.LINGERING_NETWORK_TYPE_BITMASK)) + .isEqualTo(TelephonyManager.NETWORK_TYPE_NR.toLong()) + } }