From 7a65d78aaf3f01a5fb6bc6bc27658f898af8146d Mon Sep 17 00:00:00 2001 From: Sherry Zhou Date: Tue, 18 Jul 2023 03:48:40 +0000 Subject: [PATCH] Add dumpsys to KeyguardStatusViewController Test: atest KeyguardStatusViewControllerTest, check bugreport and see dump result Bug: 289276920 Change-Id: I104ed3b8ef0aabea054774f9516d182c3d147716 --- .../android/keyguard/KeyguardStatusView.java | 1 + .../KeyguardStatusViewController.java | 29 +++++++++++++++++-- .../keyguard/KeyguardVisibilityHelper.java | 2 ++ .../NotificationPanelViewController.java | 3 ++ .../KeyguardStatusViewControllerTest.java | 14 ++++++++- ...tificationPanelViewControllerBaseTest.java | 3 +- 6 files changed, 47 insertions(+), 5 deletions(-) diff --git a/packages/SystemUI/src/com/android/keyguard/KeyguardStatusView.java b/packages/SystemUI/src/com/android/keyguard/KeyguardStatusView.java index a6252a39ee8a8..75852793c24d4 100644 --- a/packages/SystemUI/src/com/android/keyguard/KeyguardStatusView.java +++ b/packages/SystemUI/src/com/android/keyguard/KeyguardStatusView.java @@ -113,6 +113,7 @@ public class KeyguardStatusView extends GridLayout { public void dump(PrintWriter pw, String[] args) { pw.println("KeyguardStatusView:"); pw.println(" mDarkAmount: " + mDarkAmount); + pw.println(" visibility: " + getVisibility()); if (mClockView != null) { mClockView.dump(pw, args); } diff --git a/packages/SystemUI/src/com/android/keyguard/KeyguardStatusViewController.java b/packages/SystemUI/src/com/android/keyguard/KeyguardStatusViewController.java index 6854c97c34159..968c57845d08e 100644 --- a/packages/SystemUI/src/com/android/keyguard/KeyguardStatusViewController.java +++ b/packages/SystemUI/src/com/android/keyguard/KeyguardStatusViewController.java @@ -37,6 +37,7 @@ import android.view.View; import android.view.ViewGroup; import android.widget.FrameLayout; +import androidx.annotation.NonNull; import androidx.annotation.VisibleForTesting; import androidx.constraintlayout.widget.ConstraintLayout; import androidx.constraintlayout.widget.ConstraintSet; @@ -45,7 +46,9 @@ import com.android.app.animation.Interpolators; import com.android.internal.jank.InteractionJankMonitor; import com.android.keyguard.KeyguardClockSwitch.ClockSize; import com.android.keyguard.logging.KeyguardLogger; +import com.android.systemui.Dumpable; import com.android.systemui.R; +import com.android.systemui.dump.DumpManager; import com.android.systemui.flags.FeatureFlags; import com.android.systemui.plugins.ClockController; import com.android.systemui.statusbar.notification.AnimatableProperty; @@ -58,14 +61,17 @@ import com.android.systemui.statusbar.policy.ConfigurationController; import com.android.systemui.statusbar.policy.KeyguardStateController; import com.android.systemui.util.ViewController; +import java.io.PrintWriter; + import javax.inject.Inject; /** * Injectable controller for {@link KeyguardStatusView}. */ -public class KeyguardStatusViewController extends ViewController { +public class KeyguardStatusViewController extends ViewController implements + Dumpable { private static final boolean DEBUG = KeyguardConstants.DEBUG; - private static final String TAG = "KeyguardStatusViewController"; + @VisibleForTesting static final String TAG = "KeyguardStatusViewController"; /** * Duration to use for the animator when the keyguard status view alignment changes, and a @@ -87,6 +93,8 @@ public class KeyguardStatusViewController extends ViewController mKeyguardUpdateMonitorCallbackCaptor; @@ -82,7 +85,8 @@ public class KeyguardStatusViewControllerTest extends SysuiTestCase { mScreenOffAnimationController, mKeyguardLogger, mFeatureFlags, - mInteractionJankMonitor) { + mInteractionJankMonitor, + mDumpManager) { @Override void setProperty( AnimatableProperty property, @@ -170,4 +174,12 @@ public class KeyguardStatusViewControllerTest extends SysuiTestCase { verify(mKeyguardClockSwitchController, times(1)).setSplitShadeEnabled(false); verify(mKeyguardClockSwitchController, times(0)).setSplitShadeEnabled(true); } + + @Test + public void correctlyDump() { + mController.onInit(); + verify(mDumpManager).registerDumpable(mController); + mController.onDestroy(); + verify(mDumpManager, times(1)).unregisterDumpable(KeyguardStatusViewController.TAG); + } } diff --git a/packages/SystemUI/tests/src/com/android/systemui/shade/NotificationPanelViewControllerBaseTest.java b/packages/SystemUI/tests/src/com/android/systemui/shade/NotificationPanelViewControllerBaseTest.java index 9188293dc7519..ecd3308d48d97 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/shade/NotificationPanelViewControllerBaseTest.java +++ b/packages/SystemUI/tests/src/com/android/systemui/shade/NotificationPanelViewControllerBaseTest.java @@ -370,7 +370,8 @@ public class NotificationPanelViewControllerBaseTest extends SysuiTestCase { mScreenOffAnimationController, mKeyguardLogger, mFeatureFlags, - mInteractionJankMonitor)); + mInteractionJankMonitor, + mDumpManager)); when(mAuthController.isUdfpsEnrolled(anyInt())).thenReturn(false); when(mHeadsUpCallback.getContext()).thenReturn(mContext);