Loading packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/pipeline/mobile/domain/interactor/MobileIconInteractorKairosTest.kt +4 −17 Original line number Diff line number Diff line Loading @@ -56,8 +56,8 @@ import com.android.systemui.testKosmos import com.google.common.truth.Truth.assertThat import org.junit.Test import org.junit.runner.RunWith import org.mockito.ArgumentMatchers.anyInt import org.mockito.ArgumentMatchers.anyString import org.mockito.ArgumentMatchers.eq import org.mockito.kotlin.any import org.mockito.kotlin.doReturn import org.mockito.kotlin.mock Loading Loading @@ -143,7 +143,6 @@ class MobileIconInteractorKairosTest : SysuiTestCase() { connectionRepo.isGsm.setValue(true) connectionRepo.primaryLevel.setValue(GSM_LEVEL) connectionRepo.cdmaLevel.setValue(CDMA_LEVEL) // mobileIconsInteractor.alwaysUseCdmaLevel.setValue(true) alwaysUseCdmaLevel.setValue(true) val latest by underTest.signalLevelIcon.collectLastValue() Loading @@ -165,7 +164,6 @@ class MobileIconInteractorKairosTest : SysuiTestCase() { connectionRepo.isGsm.setValue(false) connectionRepo.primaryLevel.setValue(GSM_LEVEL) connectionRepo.cdmaLevel.setValue(CDMA_LEVEL) // mobileIconsInteractor.alwaysUseCdmaLevel.setValue(true) alwaysUseCdmaLevel.setValue(true) val latest by underTest.signalLevelIcon.collectLastValue() Loading @@ -178,7 +176,6 @@ class MobileIconInteractorKairosTest : SysuiTestCase() { connectionRepo.isGsm.setValue(false) connectionRepo.primaryLevel.setValue(GSM_LEVEL) connectionRepo.cdmaLevel.setValue(CDMA_LEVEL) // mobileIconsInteractor.alwaysUseCdmaLevel.setValue(false) alwaysUseCdmaLevel.setValue(false) val latest by underTest.signalLevelIcon.collectLastValue() Loading Loading @@ -318,13 +315,14 @@ class MobileIconInteractorKairosTest : SysuiTestCase() { fun overrideIcon_usesCarrierIdOverride() = runTest { overrides = mock<MobileIconCarrierIdOverrides> { on { carrierIdEntryExists(anyInt()) } doReturn true on { getOverrideFor(anyInt(), anyString(), any()) } doReturn 1234 on { carrierIdEntryExists(eq(4321)) } doReturn true on { getOverrideFor(eq(4321), anyString(), any()) } doReturn 1234 } connectionRepo.resolvedNetworkType.setValue( DefaultNetworkType(mobileMappingsProxy.toIconKey(THREE_G)) ) connectionRepo.carrierId.setValue(4321) val latest by underTest.networkTypeIconGroup.collectLastValue() Loading @@ -336,12 +334,10 @@ class MobileIconInteractorKairosTest : SysuiTestCase() { fun alwaysShowDataRatIcon_matchesParent() = runTest { val latest by underTest.alwaysShowDataRatIcon.collectLastValue() // mobileIconsInteractor.alwaysShowDataRatIcon.setValue(true) alwaysShowDataRatIcon.setValue(true) assertThat(latest).isTrue() // mobileIconsInteractor.alwaysShowDataRatIcon.setValue(false) alwaysShowDataRatIcon.setValue(false) assertThat(latest).isFalse() Loading Loading @@ -479,11 +475,9 @@ class MobileIconInteractorKairosTest : SysuiTestCase() { fun isSingleCarrier_matchesParent() = runTest { val latest by underTest.isSingleCarrier.collectLastValue() // mobileIconsInteractor.isSingleCarrier.setValue(true) isSingleCarrier.setValue(true) assertThat(latest).isTrue() // mobileIconsInteractor.isSingleCarrier.setValue(false) isSingleCarrier.setValue(false) assertThat(latest).isFalse() } Loading @@ -492,11 +486,9 @@ class MobileIconInteractorKairosTest : SysuiTestCase() { fun isForceHidden_matchesParent() = runTest { val latest by underTest.isForceHidden.collectLastValue() // mobileIconsInteractor.isForceHidden.setValue(true) isForceHidden.setValue(true) assertThat(latest).isTrue() // mobileIconsInteractor.isForceHidden.setValue(false) isForceHidden.setValue(false) assertThat(latest).isFalse() } Loading Loading @@ -524,9 +516,6 @@ class MobileIconInteractorKairosTest : SysuiTestCase() { underTest.signalLevelIcon.map { it as? SignalIconModel.Cellular }.collectLastValue() assertThat(latest?.level).isEqualTo(1) // TODO: need to provision MobileIconsInteractorKairos#isDefaultConnectionFailed + // defaultSubscriptionHasDataEnabled? assertThat(latest?.showExclamationMark).isEqualTo(false) } Loading Loading @@ -572,7 +561,6 @@ class MobileIconInteractorKairosTest : SysuiTestCase() { @Test fun cellBasedIcon_defaultConnectionFailed_showExclamationTrue() = runTest { connectionRepo.isNonTerrestrial.setValue(false) // mobileIconsInteractor.isDefaultConnectionFailed.setValue(true) isDefaultConnectionFailed.setValue(true) val latest by underTest.signalLevelIcon.collectLastValue() Loading @@ -585,7 +573,6 @@ class MobileIconInteractorKairosTest : SysuiTestCase() { connectionRepo.isNonTerrestrial.setValue(false) connectionRepo.isInService.setValue(true) connectionRepo.dataEnabled.setValue(true) // mobileIconsInteractor.isDefaultConnectionFailed.setValue(false) isDefaultConnectionFailed.setValue(false) val latest by underTest.signalLevelIcon.collectLastValue() Loading packages/SystemUI/src/com/android/systemui/statusbar/pipeline/mobile/domain/interactor/MobileIconInteractorKairos.kt +19 −31 Original line number Diff line number Diff line Loading @@ -163,12 +163,6 @@ class MobileIconInteractorKairosImpl( override val carrierNetworkChangeActive: State<Boolean> get() = connectionRepository.carrierNetworkChangeActive // True if there exists _any_ icon override for this carrierId. Note that overrides can include // any or none of the icon groups defined in MobileMappings, so we still need to check on a // per-network-type basis whether or not the given icon group is overridden private val carrierIdIconOverrideExists: State<Boolean> = connectionRepository.carrierId.map { carrierIdOverrides.carrierIdEntryExists(it) } override val networkName: State<NetworkNameModel> = combine(connectionRepository.operatorAlphaShort, connectionRepository.networkName) { operatorAlphaShort, Loading Loading @@ -201,22 +195,17 @@ class MobileIconInteractorKairosImpl( when (resolvedNetworkType) { is ResolvedNetworkType.CarrierMergedNetworkType -> resolvedNetworkType.iconGroupOverride else -> { mapping[resolvedNetworkType.lookupKey] ?: defaultGroup } else -> mapping[resolvedNetworkType.lookupKey] ?: defaultGroup } } override val networkTypeIconGroup: State<NetworkTypeIconModel> = buildState { combineTransactionally(defaultNetworkType, carrierIdIconOverrideExists) { networkType, overrideExists -> override val networkTypeIconGroup: State<NetworkTypeIconModel> = combine(defaultNetworkType, connectionRepository.carrierId) { networkType, carrierId -> // DefaultIcon comes out of the icongroup lookup, we check for overrides here if (overrideExists) { if (carrierIdOverrides.carrierIdEntryExists(carrierId)) { val iconOverride = carrierIdOverrides.getOverrideFor( connectionRepository.carrierId.sample(), carrierId, networkType.name, context.resources, ) Loading @@ -230,6 +219,7 @@ class MobileIconInteractorKairosImpl( } } .also { onActivated { logDiffsForTable( name = nameTag { Loading Loading @@ -259,12 +249,10 @@ class MobileIconInteractorKairosImpl( connectionRepository.isRoaming, connectionRepository.cdmaRoaming, ) { carrierNetworkChangeActive, isGsm, isRoaming, cdmaRoaming -> if (carrierNetworkChangeActive) { false } else if (isGsm) { isRoaming } else { cdmaRoaming when { carrierNetworkChangeActive -> false isGsm -> isRoaming else -> cdmaRoaming } } Loading Loading
packages/SystemUI/multivalentTests/src/com/android/systemui/statusbar/pipeline/mobile/domain/interactor/MobileIconInteractorKairosTest.kt +4 −17 Original line number Diff line number Diff line Loading @@ -56,8 +56,8 @@ import com.android.systemui.testKosmos import com.google.common.truth.Truth.assertThat import org.junit.Test import org.junit.runner.RunWith import org.mockito.ArgumentMatchers.anyInt import org.mockito.ArgumentMatchers.anyString import org.mockito.ArgumentMatchers.eq import org.mockito.kotlin.any import org.mockito.kotlin.doReturn import org.mockito.kotlin.mock Loading Loading @@ -143,7 +143,6 @@ class MobileIconInteractorKairosTest : SysuiTestCase() { connectionRepo.isGsm.setValue(true) connectionRepo.primaryLevel.setValue(GSM_LEVEL) connectionRepo.cdmaLevel.setValue(CDMA_LEVEL) // mobileIconsInteractor.alwaysUseCdmaLevel.setValue(true) alwaysUseCdmaLevel.setValue(true) val latest by underTest.signalLevelIcon.collectLastValue() Loading @@ -165,7 +164,6 @@ class MobileIconInteractorKairosTest : SysuiTestCase() { connectionRepo.isGsm.setValue(false) connectionRepo.primaryLevel.setValue(GSM_LEVEL) connectionRepo.cdmaLevel.setValue(CDMA_LEVEL) // mobileIconsInteractor.alwaysUseCdmaLevel.setValue(true) alwaysUseCdmaLevel.setValue(true) val latest by underTest.signalLevelIcon.collectLastValue() Loading @@ -178,7 +176,6 @@ class MobileIconInteractorKairosTest : SysuiTestCase() { connectionRepo.isGsm.setValue(false) connectionRepo.primaryLevel.setValue(GSM_LEVEL) connectionRepo.cdmaLevel.setValue(CDMA_LEVEL) // mobileIconsInteractor.alwaysUseCdmaLevel.setValue(false) alwaysUseCdmaLevel.setValue(false) val latest by underTest.signalLevelIcon.collectLastValue() Loading Loading @@ -318,13 +315,14 @@ class MobileIconInteractorKairosTest : SysuiTestCase() { fun overrideIcon_usesCarrierIdOverride() = runTest { overrides = mock<MobileIconCarrierIdOverrides> { on { carrierIdEntryExists(anyInt()) } doReturn true on { getOverrideFor(anyInt(), anyString(), any()) } doReturn 1234 on { carrierIdEntryExists(eq(4321)) } doReturn true on { getOverrideFor(eq(4321), anyString(), any()) } doReturn 1234 } connectionRepo.resolvedNetworkType.setValue( DefaultNetworkType(mobileMappingsProxy.toIconKey(THREE_G)) ) connectionRepo.carrierId.setValue(4321) val latest by underTest.networkTypeIconGroup.collectLastValue() Loading @@ -336,12 +334,10 @@ class MobileIconInteractorKairosTest : SysuiTestCase() { fun alwaysShowDataRatIcon_matchesParent() = runTest { val latest by underTest.alwaysShowDataRatIcon.collectLastValue() // mobileIconsInteractor.alwaysShowDataRatIcon.setValue(true) alwaysShowDataRatIcon.setValue(true) assertThat(latest).isTrue() // mobileIconsInteractor.alwaysShowDataRatIcon.setValue(false) alwaysShowDataRatIcon.setValue(false) assertThat(latest).isFalse() Loading Loading @@ -479,11 +475,9 @@ class MobileIconInteractorKairosTest : SysuiTestCase() { fun isSingleCarrier_matchesParent() = runTest { val latest by underTest.isSingleCarrier.collectLastValue() // mobileIconsInteractor.isSingleCarrier.setValue(true) isSingleCarrier.setValue(true) assertThat(latest).isTrue() // mobileIconsInteractor.isSingleCarrier.setValue(false) isSingleCarrier.setValue(false) assertThat(latest).isFalse() } Loading @@ -492,11 +486,9 @@ class MobileIconInteractorKairosTest : SysuiTestCase() { fun isForceHidden_matchesParent() = runTest { val latest by underTest.isForceHidden.collectLastValue() // mobileIconsInteractor.isForceHidden.setValue(true) isForceHidden.setValue(true) assertThat(latest).isTrue() // mobileIconsInteractor.isForceHidden.setValue(false) isForceHidden.setValue(false) assertThat(latest).isFalse() } Loading Loading @@ -524,9 +516,6 @@ class MobileIconInteractorKairosTest : SysuiTestCase() { underTest.signalLevelIcon.map { it as? SignalIconModel.Cellular }.collectLastValue() assertThat(latest?.level).isEqualTo(1) // TODO: need to provision MobileIconsInteractorKairos#isDefaultConnectionFailed + // defaultSubscriptionHasDataEnabled? assertThat(latest?.showExclamationMark).isEqualTo(false) } Loading Loading @@ -572,7 +561,6 @@ class MobileIconInteractorKairosTest : SysuiTestCase() { @Test fun cellBasedIcon_defaultConnectionFailed_showExclamationTrue() = runTest { connectionRepo.isNonTerrestrial.setValue(false) // mobileIconsInteractor.isDefaultConnectionFailed.setValue(true) isDefaultConnectionFailed.setValue(true) val latest by underTest.signalLevelIcon.collectLastValue() Loading @@ -585,7 +573,6 @@ class MobileIconInteractorKairosTest : SysuiTestCase() { connectionRepo.isNonTerrestrial.setValue(false) connectionRepo.isInService.setValue(true) connectionRepo.dataEnabled.setValue(true) // mobileIconsInteractor.isDefaultConnectionFailed.setValue(false) isDefaultConnectionFailed.setValue(false) val latest by underTest.signalLevelIcon.collectLastValue() Loading
packages/SystemUI/src/com/android/systemui/statusbar/pipeline/mobile/domain/interactor/MobileIconInteractorKairos.kt +19 −31 Original line number Diff line number Diff line Loading @@ -163,12 +163,6 @@ class MobileIconInteractorKairosImpl( override val carrierNetworkChangeActive: State<Boolean> get() = connectionRepository.carrierNetworkChangeActive // True if there exists _any_ icon override for this carrierId. Note that overrides can include // any or none of the icon groups defined in MobileMappings, so we still need to check on a // per-network-type basis whether or not the given icon group is overridden private val carrierIdIconOverrideExists: State<Boolean> = connectionRepository.carrierId.map { carrierIdOverrides.carrierIdEntryExists(it) } override val networkName: State<NetworkNameModel> = combine(connectionRepository.operatorAlphaShort, connectionRepository.networkName) { operatorAlphaShort, Loading Loading @@ -201,22 +195,17 @@ class MobileIconInteractorKairosImpl( when (resolvedNetworkType) { is ResolvedNetworkType.CarrierMergedNetworkType -> resolvedNetworkType.iconGroupOverride else -> { mapping[resolvedNetworkType.lookupKey] ?: defaultGroup } else -> mapping[resolvedNetworkType.lookupKey] ?: defaultGroup } } override val networkTypeIconGroup: State<NetworkTypeIconModel> = buildState { combineTransactionally(defaultNetworkType, carrierIdIconOverrideExists) { networkType, overrideExists -> override val networkTypeIconGroup: State<NetworkTypeIconModel> = combine(defaultNetworkType, connectionRepository.carrierId) { networkType, carrierId -> // DefaultIcon comes out of the icongroup lookup, we check for overrides here if (overrideExists) { if (carrierIdOverrides.carrierIdEntryExists(carrierId)) { val iconOverride = carrierIdOverrides.getOverrideFor( connectionRepository.carrierId.sample(), carrierId, networkType.name, context.resources, ) Loading @@ -230,6 +219,7 @@ class MobileIconInteractorKairosImpl( } } .also { onActivated { logDiffsForTable( name = nameTag { Loading Loading @@ -259,12 +249,10 @@ class MobileIconInteractorKairosImpl( connectionRepository.isRoaming, connectionRepository.cdmaRoaming, ) { carrierNetworkChangeActive, isGsm, isRoaming, cdmaRoaming -> if (carrierNetworkChangeActive) { false } else if (isGsm) { isRoaming } else { cdmaRoaming when { carrierNetworkChangeActive -> false isGsm -> isRoaming else -> cdmaRoaming } } Loading