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

Commit 581525fc authored by Daniel Akinola's avatar Daniel Akinola
Browse files

Add unit tests for kiosk mode dialog

Adding a new unit tests to check that when kiosk mode is enabled,
certain UI elements of the dialog are not visible

Bug: 429288575
Flag: com.android.window.flags.enable_updated_display_connection_dialog
Test: ExternalDisplayConnectionDialogDelegateTest
Change-Id: I2a1f58b0d1c4e1716b5bda73ed42d94412dce13f
parent 068427d1
Loading
Loading
Loading
Loading
+40 −0
Original line number Diff line number Diff line
@@ -26,6 +26,7 @@ import android.view.View
import android.view.Window
import android.view.WindowInsets
import android.view.WindowInsetsAnimation
import android.widget.CheckBox
import android.widget.CompoundButton
import androidx.core.view.marginBottom
import androidx.test.ext.junit.runners.AndroidJUnit4
@@ -85,6 +86,7 @@ class ExternalDisplayConnectionDialogDelegateTest : SysuiTestCase() {
            ExternalDisplayConnectionDialogDelegate(
                context = context,
                showConcurrentDisplayInfo = false,
                isInKioskMode = false,
                rememberChoiceCheckBoxListener = rememberChoiceCallback,
                onStartDesktopClickListener = onStartDesktopCallback,
                onStartMirroringClickListener = onStartMirroringCallback,
@@ -146,6 +148,44 @@ class ExternalDisplayConnectionDialogDelegateTest : SysuiTestCase() {
        verify(onStartDesktopCallback).onClick(any())
    }

    @Test
    fun startDesktopButton_inKioskMode_isNotVisible() {
        val kioskModeDialogDelegate =
            ExternalDisplayConnectionDialogDelegate(
                context = context,
                showConcurrentDisplayInfo = false,
                isInKioskMode = true,
                rememberChoiceCheckBoxListener = rememberChoiceCallback,
                onStartDesktopClickListener = onStartDesktopCallback,
                onStartMirroringClickListener = onStartMirroringCallback,
                onCancelClickListener = onCancelCallback,
                insetsProvider = { Insets.of(Rect()) },
            )
        kioskModeDialogDelegate.onCreate(dialog, null)

        val desktopModeButton = dialog.requireViewById<View>(R.id.start_desktop_mode)
        assertThat(desktopModeButton.visibility).isEqualTo(View.GONE)
    }

    @Test
    fun saveChoiceCheckbox_inKioskMode_isNotVisible() {
        val kioskModeDialogDelegate =
            ExternalDisplayConnectionDialogDelegate(
                context = context,
                showConcurrentDisplayInfo = false,
                isInKioskMode = true,
                rememberChoiceCheckBoxListener = rememberChoiceCallback,
                onStartDesktopClickListener = onStartDesktopCallback,
                onStartMirroringClickListener = onStartMirroringCallback,
                onCancelClickListener = onCancelCallback,
                insetsProvider = { Insets.of(Rect()) },
            )
        kioskModeDialogDelegate.onCreate(dialog, null)

        val saveChoiceCheckbox = dialog.requireViewById<CheckBox>(R.id.save_connection_preference)
        assertThat(saveChoiceCheckbox.visibility).isEqualTo(View.GONE)
    }

    @Test
    fun onInsetsChanged_navBarInsets_updatesBottomMargin() {
        underTest.onCreate(dialog, null)