Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ab3427eb authored by Josh Tsuji's avatar Josh Tsuji
Browse files

Add verbose logging to debug a test flake that does not repro easily locally.

Bug: 417163416
Test: logging change
Flag: EXEMPT logging change
Change-Id: Ied156c2a4fd71587cde89c5a50fda9981663d232
parent ce82bf55
Loading
Loading
Loading
Loading
+7 −1
Original line number Diff line number Diff line
@@ -17,6 +17,7 @@
package com.android.systemui.keyguard.domain.interactor

import android.animation.ValueAnimator
import android.util.Log
import android.util.MathUtils
import com.android.app.animation.Interpolators
import com.android.app.tracing.coroutines.launchTraced as launch
@@ -52,6 +53,7 @@ import kotlinx.coroutines.flow.distinctUntilChanged
import kotlinx.coroutines.flow.filter
import kotlinx.coroutines.flow.filterNotNull
import kotlinx.coroutines.flow.map
import kotlinx.coroutines.flow.onEach
import kotlinx.coroutines.flow.onStart

@SysUISingleton
@@ -301,8 +303,12 @@ constructor(
            // When the refactor is enabled, we no longer use isKeyguardGoingAway.
            scope.launch("$TAG#listenForLockscreenToGoneDragging") {
                swipeToDismissInteractor.dismissFling
                    .onEach { Log.d(TAG, "Dismiss fling emitting - filtering.") }
                    .filterNotNull()
                    .filterRelevantKeyguardState()
                    .filterRelevantKeyguardStateAnd {
                        Log.d(TAG, "dismissFling emitting - elevant keyguard state, proceeding.")
                        true
                    }
                    .collect { _ ->
                        startTransitionTo(KeyguardState.GONE, ownerReason = "dismissFling != null")
                    }
+19 −2
Original line number Diff line number Diff line
@@ -16,6 +16,7 @@

package com.android.systemui.keyguard.domain.interactor

import android.util.Log
import com.android.systemui.dagger.SysUISingleton
import com.android.systemui.dagger.qualifiers.Background
import com.android.systemui.keyguard.shared.model.KeyguardState
@@ -29,6 +30,8 @@ import kotlinx.coroutines.flow.StateFlow
import kotlinx.coroutines.flow.map
import kotlinx.coroutines.flow.stateIn

private const val TAG = "SwipeToDismissInteractor"

/**
 * Handles logic around the swipe to dismiss gesture, where the user swipes up on the dismissable
 * lockscreen to unlock the device.
@@ -53,14 +56,28 @@ constructor(
    val dismissFling: StateFlow<FlingInfo?> =
        shadeRepository.currentFling
            .map { flingInfo ->
                if (
                val isDismiss =
                    flingInfo != null &&
                        !flingInfo.expand &&
                        keyguardInteractor.statusBarState.value != StatusBarState.SHADE_LOCKED &&
                        transitionInteractor.startedKeyguardTransitionStep.value.to ==
                            KeyguardState.LOCKSCREEN &&
                        keyguardInteractor.isKeyguardDismissible.value
                ) {

                // Extra verbose logging to help debug a < 1% test flake that seemingly only repros
                // in presubmit. We can remove this after that's figured out.
                Log.d(
                    TAG,
                    "Received fling $flingInfo, isDismiss: $isDismiss." +
                        "expand: ${flingInfo?.expand}, " +
                        "statusBarState: ${keyguardInteractor.statusBarState.value}, " +
                        "startedKeyguardTransitionStep: " +
                        "${transitionInteractor.startedKeyguardTransitionStep.value.to ==
                        KeyguardState.LOCKSCREEN}, " +
                        "isKeyguardDismissible: ${keyguardInteractor.isKeyguardDismissible.value}",
                )

                if (isDismiss) {
                    flingInfo
                } else {
                    null
+2 −0
Original line number Diff line number Diff line
@@ -16,6 +16,7 @@
package com.android.systemui.shade.data.repository

import android.annotation.SuppressLint
import android.util.Log
import com.android.systemui.dagger.SysUISingleton
import com.android.systemui.dagger.qualifiers.Background
import javax.inject.Inject
@@ -312,6 +313,7 @@ class ShadeRepositoryImpl @Inject constructor(@Background val backgroundScope: C
    }

    override fun setCurrentFling(info: FlingInfo?) {
        Log.d(TAG, "setCurrentFling: $info")
        backgroundScope.launch { currentFling.emit(info) }
    }