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

Commit cf684467 authored by Jernej Virag's avatar Jernej Virag Committed by Android (Google) Code Review
Browse files

Merge "Updated the test to cover the test case with flags enabled" into main

parents 964ba913 9d3c720c
Loading
Loading
Loading
Loading
+65 −4
Original line number Diff line number Diff line
@@ -22,6 +22,7 @@ import static android.app.StatusBarManager.DISABLE_SYSTEM_INFO;

import static com.android.systemui.statusbar.StatusBarState.KEYGUARD;
import static com.android.systemui.statusbar.StatusBarState.SHADE;
import static com.android.systemui.Flags.FLAG_UPDATE_USER_SWITCHER_BACKGROUND;

import static com.google.common.truth.Truth.assertThat;

@@ -38,6 +39,8 @@ import static org.mockito.Mockito.when;

import android.os.UserHandle;
import android.os.UserManager;
import android.platform.test.annotations.DisableFlags;
import android.platform.test.annotations.EnableFlags;
import android.provider.Settings;
import android.testing.AndroidTestingRunner;
import android.testing.TestableLooper;
@@ -226,9 +229,11 @@ public class KeyguardStatusBarViewControllerTest extends SysuiTestCase {
    }

    @Test
    public void onViewAttached_callbacksRegistered() {
    @EnableFlags(FLAG_UPDATE_USER_SWITCHER_BACKGROUND)
    public void onViewAttached_updateUserSwitcherFlagEnabled_callbacksRegistered() {
        mController.onViewAttached();

        runAllScheduled();
        verify(mConfigurationController).addCallback(any());
        verify(mAnimationScheduler).addCallback(any());
        verify(mUserInfoController).addCallback(any());
@@ -238,19 +243,70 @@ public class KeyguardStatusBarViewControllerTest extends SysuiTestCase {
    }

    @Test
    public void onConfigurationChanged_updatesUserSwitcherVisibility() {
    @DisableFlags(FLAG_UPDATE_USER_SWITCHER_BACKGROUND)
    public void onViewAttached_updateUserSwitcherFlagDisabled_callbacksRegistered() {
        mController.onViewAttached();

        verify(mConfigurationController).addCallback(any());
        verify(mAnimationScheduler).addCallback(any());
        verify(mUserInfoController).addCallback(any());
        verify(mCommandQueue).addCallback(any());
        verify(mStatusBarIconController).addIconGroup(any());
        verify(mUserManager).isUserSwitcherEnabled(anyBoolean());
    }

    @Test
    @EnableFlags(FLAG_UPDATE_USER_SWITCHER_BACKGROUND)
    public void
            onConfigurationChanged_updateUserSwitcherFlagEnabled_updatesUserSwitcherVisibility() {
        mController.onViewAttached();
        runAllScheduled();
        verify(mConfigurationController).addCallback(mConfigurationListenerCaptor.capture());
        clearInvocations(mUserManager);
        clearInvocations(mKeyguardStatusBarView);

        mConfigurationListenerCaptor.getValue().onConfigChanged(null);

        runAllScheduled();
        verify(mUserManager).isUserSwitcherEnabled(anyBoolean());
        verify(mKeyguardStatusBarView).setUserSwitcherEnabled(anyBoolean());
    }

    @Test
    public void onKeyguardVisibilityChanged_updatesUserSwitcherVisibility() {
    @DisableFlags(FLAG_UPDATE_USER_SWITCHER_BACKGROUND)
    public void
            onConfigurationChanged_updateUserSwitcherFlagDisabled_updatesUserSwitcherVisibility() {
        mController.onViewAttached();
        verify(mConfigurationController).addCallback(mConfigurationListenerCaptor.capture());
        clearInvocations(mUserManager);
        clearInvocations(mKeyguardStatusBarView);

        mConfigurationListenerCaptor.getValue().onConfigChanged(null);
        verify(mUserManager).isUserSwitcherEnabled(anyBoolean());
        verify(mKeyguardStatusBarView).setUserSwitcherEnabled(anyBoolean());
    }

    @Test
    @EnableFlags(FLAG_UPDATE_USER_SWITCHER_BACKGROUND)
    public void
            onKeyguardVisibilityChanged_userSwitcherFlagEnabled_updatesUserSwitcherVisibility() {
        mController.onViewAttached();
        runAllScheduled();
        verify(mKeyguardUpdateMonitor).registerCallback(mKeyguardCallbackCaptor.capture());
        clearInvocations(mUserManager);
        clearInvocations(mKeyguardStatusBarView);

        mKeyguardCallbackCaptor.getValue().onKeyguardVisibilityChanged(true);

        runAllScheduled();
        verify(mUserManager).isUserSwitcherEnabled(anyBoolean());
        verify(mKeyguardStatusBarView).setUserSwitcherEnabled(anyBoolean());
    }

    @Test
    @DisableFlags(FLAG_UPDATE_USER_SWITCHER_BACKGROUND)
    public void
            onKeyguardVisibilityChanged_userSwitcherFlagDisabled_updatesUserSwitcherVisibility() {
        mController.onViewAttached();
        verify(mKeyguardUpdateMonitor).registerCallback(mKeyguardCallbackCaptor.capture());
        clearInvocations(mUserManager);
@@ -762,6 +818,11 @@ public class KeyguardStatusBarViewControllerTest extends SysuiTestCase {
        return captor.getValue();
    }

    private void runAllScheduled() {
        mBackgroundExecutor.runAllReady();
        mFakeExecutor.runAllReady();
    }

    private static class TestShadeViewStateProvider
            implements ShadeViewStateProvider {