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

Commit 9d3c720c authored by archisha's avatar archisha
Browse files

Updated the test to cover the test case with flags enabled

Bug: 307710750
Test: Manual test
Flag: ACONFIG com.android.systemui.flags.Flags.updateUserSwitcherBackground DEVELOPMENT
Change-Id: I72a6879ba56718759a4c4f0f89ffa7af31f94b8a
parent 0630fa93
Loading
Loading
Loading
Loading
+65 −4
Original line number Original line 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.KEYGUARD;
import static com.android.systemui.statusbar.StatusBarState.SHADE;
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;
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.UserHandle;
import android.os.UserManager;
import android.os.UserManager;
import android.platform.test.annotations.DisableFlags;
import android.platform.test.annotations.EnableFlags;
import android.provider.Settings;
import android.provider.Settings;
import android.testing.AndroidTestingRunner;
import android.testing.AndroidTestingRunner;
import android.testing.TestableLooper;
import android.testing.TestableLooper;
@@ -226,9 +229,11 @@ public class KeyguardStatusBarViewControllerTest extends SysuiTestCase {
    }
    }


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


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


    @Test
    @Test
    public void onConfigurationChanged_updatesUserSwitcherVisibility() {
    @DisableFlags(FLAG_UPDATE_USER_SWITCHER_BACKGROUND)
    public void onViewAttached_updateUserSwitcherFlagDisabled_callbacksRegistered() {
        mController.onViewAttached();
        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());
        verify(mConfigurationController).addCallback(mConfigurationListenerCaptor.capture());
        clearInvocations(mUserManager);
        clearInvocations(mUserManager);
        clearInvocations(mKeyguardStatusBarView);
        clearInvocations(mKeyguardStatusBarView);


        mConfigurationListenerCaptor.getValue().onConfigChanged(null);
        mConfigurationListenerCaptor.getValue().onConfigChanged(null);

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


    @Test
    @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();
        mController.onViewAttached();
        verify(mKeyguardUpdateMonitor).registerCallback(mKeyguardCallbackCaptor.capture());
        verify(mKeyguardUpdateMonitor).registerCallback(mKeyguardCallbackCaptor.capture());
        clearInvocations(mUserManager);
        clearInvocations(mUserManager);
@@ -762,6 +818,11 @@ public class KeyguardStatusBarViewControllerTest extends SysuiTestCase {
        return captor.getValue();
        return captor.getValue();
    }
    }


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

    private static class TestShadeViewStateProvider
    private static class TestShadeViewStateProvider
            implements ShadeViewStateProvider {
            implements ShadeViewStateProvider {