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

Commit 9402593e authored by Treehugger Robot's avatar Treehugger Robot Committed by Automerger Merge Worker
Browse files

Merge "key-guard PIN view: Fixed initial posture." into udc-qpr-dev am: 5c9e5515 am: 38cde80b

parents b2453881 38cde80b
Loading
Loading
Loading
Loading
+1 −0
Original line number Original line Diff line number Diff line
@@ -77,6 +77,7 @@ public class KeyguardPinViewController
            });
            });
        }
        }
        mPasswordEntry.setUserActivityListener(this::onUserInput);
        mPasswordEntry.setUserActivityListener(this::onUserInput);
        mView.onDevicePostureChanged(mPostureController.getDevicePosture());
        mPostureController.addCallback(mPostureCallback);
        mPostureController.addCallback(mPostureCallback);
    }
    }


+37 −1
Original line number Original line Diff line number Diff line
@@ -30,12 +30,16 @@ import com.android.systemui.classifier.FalsingCollectorFake
import com.android.systemui.flags.FeatureFlags
import com.android.systemui.flags.FeatureFlags
import com.android.systemui.flags.Flags
import com.android.systemui.flags.Flags
import com.android.systemui.statusbar.policy.DevicePostureController
import com.android.systemui.statusbar.policy.DevicePostureController
import com.android.systemui.statusbar.policy.DevicePostureController.DEVICE_POSTURE_HALF_OPENED
import com.android.systemui.statusbar.policy.DevicePostureController.DEVICE_POSTURE_OPENED
import org.junit.Before
import org.junit.Before
import org.junit.Test
import org.junit.Test
import org.junit.runner.RunWith
import org.junit.runner.RunWith
import org.mockito.ArgumentCaptor
import org.mockito.ArgumentMatchers.anyBoolean
import org.mockito.ArgumentMatchers.anyBoolean
import org.mockito.ArgumentMatchers.anyInt
import org.mockito.ArgumentMatchers.anyInt
import org.mockito.ArgumentMatchers.anyString
import org.mockito.ArgumentMatchers.anyString
import org.mockito.Captor
import org.mockito.Mock
import org.mockito.Mock
import org.mockito.Mockito
import org.mockito.Mockito
import org.mockito.Mockito.any
import org.mockito.Mockito.any
@@ -79,7 +83,9 @@ class KeyguardPinViewControllerTest : SysuiTestCase() {
    @Mock lateinit var deleteButton: NumPadButton
    @Mock lateinit var deleteButton: NumPadButton
    @Mock lateinit var enterButton: View
    @Mock lateinit var enterButton: View


    lateinit var pinViewController: KeyguardPinViewController
    private lateinit var pinViewController: KeyguardPinViewController

    @Captor lateinit var postureCallbackCaptor: ArgumentCaptor<DevicePostureController.Callback>


    @Before
    @Before
    fun setup() {
    fun setup() {
@@ -97,6 +103,9 @@ class KeyguardPinViewControllerTest : SysuiTestCase() {
        `when`(keyguardPinView.findViewById<NumPadButton>(R.id.delete_button))
        `when`(keyguardPinView.findViewById<NumPadButton>(R.id.delete_button))
            .thenReturn(deleteButton)
            .thenReturn(deleteButton)
        `when`(keyguardPinView.findViewById<View>(R.id.key_enter)).thenReturn(enterButton)
        `when`(keyguardPinView.findViewById<View>(R.id.key_enter)).thenReturn(enterButton)
        // For posture tests:
        `when`(keyguardPinView.buttons).thenReturn(arrayOf())

        pinViewController =
        pinViewController =
            KeyguardPinViewController(
            KeyguardPinViewController(
                keyguardPinView,
                keyguardPinView,
@@ -114,6 +123,33 @@ class KeyguardPinViewControllerTest : SysuiTestCase() {
            )
            )
    }
    }


    @Test
    fun onViewAttached_deviceHalfFolded_propagatedToPinView() {
        `when`(postureController.devicePosture).thenReturn(DEVICE_POSTURE_HALF_OPENED)

        pinViewController.onViewAttached()

        verify(keyguardPinView).onDevicePostureChanged(DEVICE_POSTURE_HALF_OPENED)
    }

    @Test
    fun onDevicePostureChanged_deviceHalfFolded_propagatedToPinView() {
        `when`(postureController.devicePosture).thenReturn(DEVICE_POSTURE_HALF_OPENED)

        // Verify view begins in posture state DEVICE_POSTURE_HALF_OPENED
        pinViewController.onViewAttached()

        verify(keyguardPinView).onDevicePostureChanged(DEVICE_POSTURE_HALF_OPENED)

        // Simulate posture change to state DEVICE_POSTURE_OPENED with callback
        verify(postureController).addCallback(postureCallbackCaptor.capture())
        val postureCallback: DevicePostureController.Callback = postureCallbackCaptor.value
        postureCallback.onPostureChanged(DEVICE_POSTURE_OPENED)

        // Verify view is now in posture state DEVICE_POSTURE_OPENED
        verify(keyguardPinView).onDevicePostureChanged(DEVICE_POSTURE_OPENED)
    }

    @Test
    @Test
    fun startAppearAnimation() {
    fun startAppearAnimation() {
        pinViewController.startAppearAnimation()
        pinViewController.startAppearAnimation()