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 lateinit var telephonyManager: TelephonyManager
|
||||
private lateinit var satelliteManager: SatelliteManager
|
||||
private val satelliteManager: SatelliteManager? =
|
||||
context.getSystemService(SatelliteManager::class.java)
|
||||
private val listeners = mutableListOf<OnNetworkSelectModeListener>()
|
||||
|
||||
@VisibleForTesting
|
||||
@@ -112,7 +113,6 @@ class AutoSelectPreferenceController @JvmOverloads constructor(
|
||||
this.subId = subId
|
||||
telephonyManager = mContext.getSystemService(TelephonyManager::class.java)!!
|
||||
.createForSubscriptionId(subId)
|
||||
satelliteManager = mContext.getSystemService(SatelliteManager::class.java)!!
|
||||
return this
|
||||
}
|
||||
|
||||
|
||||
@@ -217,6 +217,20 @@ class AutoSelectPreferenceControllerTest {
|
||||
.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
|
||||
fun onClick_turnOff_startNetworkSelectActivity() {
|
||||
serviceState.isManualSelection = false
|
||||
|
||||
Reference in New Issue
Block a user