summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Hawkwood Glazier <jglazier@google.com> 2022-08-07 02:48:28 +0000
committer Hawkwood Glazier <jglazier@google.com> 2022-08-19 21:18:00 +0000
commited1efe9f3137395b2589dca9063d97dfcd4b3923 (patch)
tree40bb4ecd6d7c3da61555642d5f2270f323e5409a
parent60eb90b1b3e7b2f41159794378455a8bb674cbd7 (diff)
[DO NOT MERGE] Allow manually specified time
Additionally, disable layout animation from test Bug: 229771520 Test: Automated Change-Id: I2518d293f5b03e7bea7a45d8ef24ec6a998b5d30
-rw-r--r--packages/SystemUI/screenshot/src/com/android/systemui/testing/screenshot/ViewScreenshotTestRule.kt7
-rw-r--r--packages/SystemUI/shared/src/com/android/systemui/shared/clocks/AnimatableClockView.kt4
-rw-r--r--packages/SystemUI/src/com/android/keyguard/KeyguardClockSwitch.java3
3 files changed, 10 insertions, 4 deletions
diff --git a/packages/SystemUI/screenshot/src/com/android/systemui/testing/screenshot/ViewScreenshotTestRule.kt b/packages/SystemUI/screenshot/src/com/android/systemui/testing/screenshot/ViewScreenshotTestRule.kt
index 60130e1086ef..47e2d2ccd13e 100644
--- a/packages/SystemUI/screenshot/src/com/android/systemui/testing/screenshot/ViewScreenshotTestRule.kt
+++ b/packages/SystemUI/screenshot/src/com/android/systemui/testing/screenshot/ViewScreenshotTestRule.kt
@@ -44,9 +44,13 @@ import platform.test.screenshot.DeviceEmulationSpec
import platform.test.screenshot.MaterialYouColorsRule
import platform.test.screenshot.ScreenshotTestRule
import platform.test.screenshot.getEmulatedDevicePathConfig
+import platform.test.screenshot.matchers.BitmapMatcher
/** A rule for View screenshot diff unit tests. */
-class ViewScreenshotTestRule(emulationSpec: DeviceEmulationSpec) : TestRule {
+class ViewScreenshotTestRule(
+ emulationSpec: DeviceEmulationSpec,
+ private val matcher: BitmapMatcher = UnitTestBitmapMatcher
+) : TestRule {
private val colorsRule = MaterialYouColorsRule()
private val deviceEmulationRule = DeviceEmulationRule(emulationSpec)
private val screenshotRule =
@@ -59,7 +63,6 @@ class ViewScreenshotTestRule(emulationSpec: DeviceEmulationSpec) : TestRule {
.around(deviceEmulationRule)
.around(screenshotRule)
.around(activityRule)
- private val matcher = UnitTestBitmapMatcher
override fun apply(base: Statement, description: Description): Statement {
return delegateRule.apply(base, description)
diff --git a/packages/SystemUI/shared/src/com/android/systemui/shared/clocks/AnimatableClockView.kt b/packages/SystemUI/shared/src/com/android/systemui/shared/clocks/AnimatableClockView.kt
index 2739d59dbf00..4aee8aa20324 100644
--- a/packages/SystemUI/shared/src/com/android/systemui/shared/clocks/AnimatableClockView.kt
+++ b/packages/SystemUI/shared/src/com/android/systemui/shared/clocks/AnimatableClockView.kt
@@ -69,6 +69,8 @@ class AnimatableClockView @JvmOverloads constructor(
private var textAnimator: TextAnimator? = null
private var onTextAnimatorInitialized: Runnable? = null
+ var timeOverrideInMillis: Long? = null
+
val dozingWeight: Int
get() = if (useBoldedVersion()) dozingWeightInternal + 100 else dozingWeightInternal
@@ -125,7 +127,7 @@ class AnimatableClockView @JvmOverloads constructor(
}
fun refreshTime() {
- time.timeInMillis = System.currentTimeMillis()
+ time.timeInMillis = timeOverrideInMillis ?: System.currentTimeMillis()
contentDescription = DateFormat.format(descFormat, time)
val formattedText = DateFormat.format(format, time)
// Setting text actually triggers a layout pass (because the text view is set to
diff --git a/packages/SystemUI/src/com/android/keyguard/KeyguardClockSwitch.java b/packages/SystemUI/src/com/android/keyguard/KeyguardClockSwitch.java
index 206b8bee323c..916410856b20 100644
--- a/packages/SystemUI/src/com/android/keyguard/KeyguardClockSwitch.java
+++ b/packages/SystemUI/src/com/android/keyguard/KeyguardClockSwitch.java
@@ -88,6 +88,7 @@ public class KeyguardClockSwitch extends RelativeLayout {
private int mClockSwitchYAmount;
@VisibleForTesting boolean mChildrenAreLaidOut = false;
+ @VisibleForTesting boolean mAnimateOnLayout = true;
public KeyguardClockSwitch(Context context, AttributeSet attrs) {
super(context, attrs);
@@ -305,7 +306,7 @@ public class KeyguardClockSwitch extends RelativeLayout {
super.onLayout(changed, l, t, r, b);
if (mDisplayedClockSize != null && !mChildrenAreLaidOut) {
- post(() -> updateClockViews(mDisplayedClockSize == LARGE, /* animate */ true));
+ post(() -> updateClockViews(mDisplayedClockSize == LARGE, mAnimateOnLayout));
}
mChildrenAreLaidOut = true;