Merge "User switcher: hooks up broadcast receivers." into tm-qpr-dev
This commit is contained in:
@@ -28,6 +28,8 @@ import android.util.Log
|
||||
import android.view.WindowManagerGlobal
|
||||
import android.widget.Toast
|
||||
import com.android.internal.logging.UiEventLogger
|
||||
import com.android.systemui.GuestResetOrExitSessionReceiver
|
||||
import com.android.systemui.GuestResumeSessionReceiver
|
||||
import com.android.systemui.dagger.SysUISingleton
|
||||
import com.android.systemui.dagger.qualifiers.Application
|
||||
import com.android.systemui.dagger.qualifiers.Background
|
||||
@@ -58,6 +60,8 @@ constructor(
|
||||
private val devicePolicyManager: DevicePolicyManager,
|
||||
private val refreshUsersScheduler: RefreshUsersScheduler,
|
||||
private val uiEventLogger: UiEventLogger,
|
||||
resumeSessionReceiver: GuestResumeSessionReceiver,
|
||||
resetOrExitSessionReceiver: GuestResetOrExitSessionReceiver,
|
||||
) {
|
||||
/** Whether the device is configured to always have a guest user available. */
|
||||
val isGuestUserAutoCreated: Boolean = repository.isGuestUserAutoCreated
|
||||
@@ -65,6 +69,11 @@ constructor(
|
||||
/** Whether the guest user is currently being reset. */
|
||||
val isGuestUserResetting: Boolean = repository.isGuestUserResetting
|
||||
|
||||
init {
|
||||
resumeSessionReceiver.register()
|
||||
resetOrExitSessionReceiver.register()
|
||||
}
|
||||
|
||||
/** Notifies that the device has finished booting. */
|
||||
fun onDeviceBootCompleted() {
|
||||
applicationScope.launch {
|
||||
|
||||
@@ -23,6 +23,8 @@ import android.os.UserHandle
|
||||
import android.os.UserManager
|
||||
import androidx.test.filters.SmallTest
|
||||
import com.android.internal.logging.UiEventLogger
|
||||
import com.android.systemui.GuestResetOrExitSessionReceiver
|
||||
import com.android.systemui.GuestResumeSessionReceiver
|
||||
import com.android.systemui.SysuiTestCase
|
||||
import com.android.systemui.statusbar.policy.DeviceProvisionedController
|
||||
import com.android.systemui.user.data.repository.FakeUserRepository
|
||||
@@ -55,6 +57,8 @@ class GuestUserInteractorTest : SysuiTestCase() {
|
||||
@Mock private lateinit var dismissDialog: () -> Unit
|
||||
@Mock private lateinit var selectUser: (Int) -> Unit
|
||||
@Mock private lateinit var switchUser: (Int) -> Unit
|
||||
@Mock private lateinit var resumeSessionReceiver: GuestResumeSessionReceiver
|
||||
@Mock private lateinit var resetOrExitSessionReceiver: GuestResetOrExitSessionReceiver
|
||||
|
||||
private lateinit var underTest: GuestUserInteractor
|
||||
|
||||
@@ -87,9 +91,17 @@ class GuestUserInteractorTest : SysuiTestCase() {
|
||||
repository = repository,
|
||||
),
|
||||
uiEventLogger = uiEventLogger,
|
||||
resumeSessionReceiver = resumeSessionReceiver,
|
||||
resetOrExitSessionReceiver = resetOrExitSessionReceiver,
|
||||
)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun `registers broadcast receivers`() {
|
||||
verify(resumeSessionReceiver).register()
|
||||
verify(resetOrExitSessionReceiver).register()
|
||||
}
|
||||
|
||||
@Test
|
||||
fun `onDeviceBootCompleted - allowed to add - create guest`() =
|
||||
runBlocking(IMMEDIATE) {
|
||||
|
||||
@@ -21,6 +21,8 @@ import android.app.ActivityManager
|
||||
import android.app.admin.DevicePolicyManager
|
||||
import android.os.UserManager
|
||||
import com.android.internal.logging.UiEventLogger
|
||||
import com.android.systemui.GuestResetOrExitSessionReceiver
|
||||
import com.android.systemui.GuestResumeSessionReceiver
|
||||
import com.android.systemui.SysuiTestCase
|
||||
import com.android.systemui.flags.FakeFeatureFlags
|
||||
import com.android.systemui.flags.Flags
|
||||
@@ -48,6 +50,8 @@ abstract class UserInteractorTest : SysuiTestCase() {
|
||||
@Mock protected lateinit var devicePolicyManager: DevicePolicyManager
|
||||
@Mock protected lateinit var uiEventLogger: UiEventLogger
|
||||
@Mock protected lateinit var dialogShower: UserSwitchDialogController.DialogShower
|
||||
@Mock private lateinit var resumeSessionReceiver: GuestResumeSessionReceiver
|
||||
@Mock private lateinit var resetOrExitSessionReceiver: GuestResetOrExitSessionReceiver
|
||||
|
||||
protected lateinit var underTest: UserInteractor
|
||||
|
||||
@@ -107,6 +111,8 @@ abstract class UserInteractorTest : SysuiTestCase() {
|
||||
devicePolicyManager = devicePolicyManager,
|
||||
refreshUsersScheduler = refreshUsersScheduler,
|
||||
uiEventLogger = uiEventLogger,
|
||||
resumeSessionReceiver = resumeSessionReceiver,
|
||||
resetOrExitSessionReceiver = resetOrExitSessionReceiver,
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
@@ -23,6 +23,8 @@ import android.graphics.drawable.Drawable
|
||||
import android.os.UserManager
|
||||
import androidx.test.filters.SmallTest
|
||||
import com.android.internal.logging.UiEventLogger
|
||||
import com.android.systemui.GuestResetOrExitSessionReceiver
|
||||
import com.android.systemui.GuestResumeSessionReceiver
|
||||
import com.android.systemui.SysuiTestCase
|
||||
import com.android.systemui.common.shared.model.Text
|
||||
import com.android.systemui.flags.FakeFeatureFlags
|
||||
@@ -69,6 +71,8 @@ class UserSwitcherViewModelTest : SysuiTestCase() {
|
||||
@Mock private lateinit var deviceProvisionedController: DeviceProvisionedController
|
||||
@Mock private lateinit var devicePolicyManager: DevicePolicyManager
|
||||
@Mock private lateinit var uiEventLogger: UiEventLogger
|
||||
@Mock private lateinit var resumeSessionReceiver: GuestResumeSessionReceiver
|
||||
@Mock private lateinit var resetOrExitSessionReceiver: GuestResetOrExitSessionReceiver
|
||||
|
||||
private lateinit var underTest: UserSwitcherViewModel
|
||||
|
||||
@@ -104,6 +108,8 @@ class UserSwitcherViewModelTest : SysuiTestCase() {
|
||||
devicePolicyManager = devicePolicyManager,
|
||||
refreshUsersScheduler = refreshUsersScheduler,
|
||||
uiEventLogger = uiEventLogger,
|
||||
resumeSessionReceiver = resumeSessionReceiver,
|
||||
resetOrExitSessionReceiver = resetOrExitSessionReceiver,
|
||||
)
|
||||
|
||||
underTest =
|
||||
|
||||
Reference in New Issue
Block a user