Merge changes from topic "presubmit-am-9eb43876b6f544bc8e5ec2647746fcca" into tm-mainline-prod
* changes:
[automerge] Catch if an invalid constant is sent 2p: edd059b302
Catch if an invalid constant is sent
This commit is contained in:
committed by
Android (Google) Code Review
commit
a09aed3592
@@ -17,6 +17,7 @@
|
|||||||
package com.android.systemui.media.taptotransfer.receiver
|
package com.android.systemui.media.taptotransfer.receiver
|
||||||
|
|
||||||
import android.app.StatusBarManager
|
import android.app.StatusBarManager
|
||||||
|
import android.util.Log
|
||||||
import com.android.internal.logging.UiEventLogger
|
import com.android.internal.logging.UiEventLogger
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -25,15 +26,15 @@ import com.android.internal.logging.UiEventLogger
|
|||||||
*/
|
*/
|
||||||
enum class ChipStateReceiver(
|
enum class ChipStateReceiver(
|
||||||
@StatusBarManager.MediaTransferSenderState val stateInt: Int,
|
@StatusBarManager.MediaTransferSenderState val stateInt: Int,
|
||||||
val uiEvent: UiEventLogger.UiEventEnum,
|
val uiEvent: UiEventLogger.UiEventEnum
|
||||||
) {
|
) {
|
||||||
CLOSE_TO_SENDER(
|
CLOSE_TO_SENDER(
|
||||||
StatusBarManager.MEDIA_TRANSFER_RECEIVER_STATE_CLOSE_TO_SENDER,
|
StatusBarManager.MEDIA_TRANSFER_RECEIVER_STATE_CLOSE_TO_SENDER,
|
||||||
MediaTttReceiverUiEvents.MEDIA_TTT_RECEIVER_CLOSE_TO_SENDER,
|
MediaTttReceiverUiEvents.MEDIA_TTT_RECEIVER_CLOSE_TO_SENDER
|
||||||
),
|
),
|
||||||
FAR_FROM_SENDER(
|
FAR_FROM_SENDER(
|
||||||
StatusBarManager.MEDIA_TRANSFER_RECEIVER_STATE_FAR_FROM_SENDER,
|
StatusBarManager.MEDIA_TRANSFER_RECEIVER_STATE_FAR_FROM_SENDER,
|
||||||
MediaTttReceiverUiEvents.MEDIA_TTT_RECEIVER_FAR_FROM_SENDER,
|
MediaTttReceiverUiEvents.MEDIA_TTT_RECEIVER_FAR_FROM_SENDER
|
||||||
);
|
);
|
||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
@@ -43,8 +44,13 @@ enum class ChipStateReceiver(
|
|||||||
*/
|
*/
|
||||||
fun getReceiverStateFromId(
|
fun getReceiverStateFromId(
|
||||||
@StatusBarManager.MediaTransferReceiverState displayState: Int
|
@StatusBarManager.MediaTransferReceiverState displayState: Int
|
||||||
) : ChipStateReceiver = values().first { it.stateInt == displayState }
|
): ChipStateReceiver? =
|
||||||
|
try {
|
||||||
|
values().first { it.stateInt == displayState }
|
||||||
|
} catch (e: NoSuchElementException) {
|
||||||
|
Log.e(TAG, "Could not find requested state $displayState", e)
|
||||||
|
null
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the state int from [StatusBarManager] associated with the given sender state
|
* Returns the state int from [StatusBarManager] associated with the given sender state
|
||||||
@@ -56,3 +62,5 @@ enum class ChipStateReceiver(
|
|||||||
fun getReceiverStateIdFromName(name: String): Int = valueOf(name).stateInt
|
fun getReceiverStateIdFromName(name: String): Int = valueOf(name).stateInt
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private const val TAG = "ChipStateReceiver"
|
||||||
|
|||||||
@@ -102,7 +102,7 @@ class MediaTttChipControllerReceiverTest : SysuiTestCase() {
|
|||||||
TapGestureDetector(context),
|
TapGestureDetector(context),
|
||||||
powerManager,
|
powerManager,
|
||||||
Handler.getMain(),
|
Handler.getMain(),
|
||||||
receiverUiEventLogger,
|
receiverUiEventLogger
|
||||||
)
|
)
|
||||||
|
|
||||||
val callbackCaptor = ArgumentCaptor.forClass(CommandQueue.Callbacks::class.java)
|
val callbackCaptor = ArgumentCaptor.forClass(CommandQueue.Callbacks::class.java)
|
||||||
@@ -206,6 +206,18 @@ class MediaTttChipControllerReceiverTest : SysuiTestCase() {
|
|||||||
assertThat(chipView.getAppIconView().measuredHeight).isEqualTo(expectedSize)
|
assertThat(chipView.getAppIconView().measuredHeight).isEqualTo(expectedSize)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun commandQueueCallback_invalidStateParam_noChipShown() {
|
||||||
|
commandQueueCallback.updateMediaTapToTransferReceiverDisplay(
|
||||||
|
StatusBarManager.MEDIA_TRANSFER_SENDER_STATE_TRANSFER_TO_THIS_DEVICE_SUCCEEDED,
|
||||||
|
routeInfo,
|
||||||
|
null,
|
||||||
|
APP_NAME
|
||||||
|
)
|
||||||
|
|
||||||
|
verify(windowManager, never()).addView(any(), any())
|
||||||
|
}
|
||||||
|
|
||||||
private fun getChipView(): ViewGroup {
|
private fun getChipView(): ViewGroup {
|
||||||
val viewCaptor = ArgumentCaptor.forClass(View::class.java)
|
val viewCaptor = ArgumentCaptor.forClass(View::class.java)
|
||||||
verify(windowManager).addView(viewCaptor.capture(), any())
|
verify(windowManager).addView(viewCaptor.capture(), any())
|
||||||
|
|||||||
Reference in New Issue
Block a user