Fix crash due to no Satellite
- AutoSelectPreferenceController get null pointer exception Flag: EXEMPT bug fix Fix: b/381995900 Test: atest pass Change-Id: Iadbd83825cdfbc0aabd85b79e9ad7043f172a8a1
This commit is contained in:
@@ -82,7 +82,8 @@ class AutoSelectPreferenceController @JvmOverloads constructor(
|
|||||||
private var isSelectedSubIdForSatellite = false
|
private var isSelectedSubIdForSatellite = false
|
||||||
|
|
||||||
private lateinit var telephonyManager: TelephonyManager
|
private lateinit var telephonyManager: TelephonyManager
|
||||||
private lateinit var satelliteManager: SatelliteManager
|
private val satelliteManager: SatelliteManager? =
|
||||||
|
context.getSystemService(SatelliteManager::class.java)
|
||||||
private val listeners = mutableListOf<OnNetworkSelectModeListener>()
|
private val listeners = mutableListOf<OnNetworkSelectModeListener>()
|
||||||
|
|
||||||
@VisibleForTesting
|
@VisibleForTesting
|
||||||
@@ -112,7 +113,6 @@ class AutoSelectPreferenceController @JvmOverloads constructor(
|
|||||||
this.subId = subId
|
this.subId = subId
|
||||||
telephonyManager = mContext.getSystemService(TelephonyManager::class.java)!!
|
telephonyManager = mContext.getSystemService(TelephonyManager::class.java)!!
|
||||||
.createForSubscriptionId(subId)
|
.createForSubscriptionId(subId)
|
||||||
satelliteManager = mContext.getSystemService(SatelliteManager::class.java)!!
|
|
||||||
return this
|
return this
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -217,6 +217,20 @@ class AutoSelectPreferenceControllerTest {
|
|||||||
.assertIsEnabled()
|
.assertIsEnabled()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
@EnableFlags(Flags.FLAG_SATELLITE_OEM_SETTINGS_UX_MIGRATION)
|
||||||
|
fun initialization_noSatellite_noCrash() {
|
||||||
|
`when`(context.getSystemService(SatelliteManager::class.java)).thenReturn(null)
|
||||||
|
|
||||||
|
AutoSelectPreferenceController(
|
||||||
|
context = context,
|
||||||
|
key = TEST_KEY,
|
||||||
|
allowedNetworkTypesFlowFactory = { emptyFlow() },
|
||||||
|
serviceStateFlowFactory = { flowOf(serviceState) },
|
||||||
|
getConfigForSubId = { carrierConfig },
|
||||||
|
).init(subId = SUB_ID)
|
||||||
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
fun onClick_turnOff_startNetworkSelectActivity() {
|
fun onClick_turnOff_startNetworkSelectActivity() {
|
||||||
serviceState.isManualSelection = false
|
serviceState.isManualSelection = false
|
||||||
|
|||||||
Reference in New Issue
Block a user