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

Commit 90357421 authored by Vaibhav Devmurari's avatar Vaibhav Devmurari
Browse files

Fix KeyboardLayoutTest and support multi-user CTS testing

Always run as SYSTEM to prevent cts failures when the current user
isn't user 0

Test: atest KeyboardLayoutTest
Test: atest KeyboardLayoutManagerTests
Bug: 268571576
Bug: 263752542
Change-Id: I67b7bf9b3a07ac5533496f89e0dab3582a519b76
parent b9991d2a
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -343,9 +343,9 @@ final class KeyboardLayoutManager implements InputManager.InputDeviceListener {
    private void visitAllKeyboardLayouts(KeyboardLayoutVisitor visitor) {
        final PackageManager pm = mContext.getPackageManager();
        Intent intent = new Intent(InputManager.ACTION_QUERY_KEYBOARD_LAYOUTS);
        for (ResolveInfo resolveInfo : pm.queryBroadcastReceivers(intent,
        for (ResolveInfo resolveInfo : pm.queryBroadcastReceiversAsUser(intent,
                PackageManager.GET_META_DATA | PackageManager.MATCH_DIRECT_BOOT_AWARE
                        | PackageManager.MATCH_DIRECT_BOOT_UNAWARE)) {
                        | PackageManager.MATCH_DIRECT_BOOT_UNAWARE, UserHandle.USER_SYSTEM)) {
            final ActivityInfo activityInfo = resolveInfo.activityInfo;
            final int priority = resolveInfo.priority;
            visitKeyboardLayoutsInPackage(pm, activityInfo, null, priority, visitor);
+2 −2
Original line number Diff line number Diff line
@@ -167,8 +167,8 @@ class KeyboardLayoutManagerTests {
        Mockito.`when`(context.packageManager).thenReturn(packageManager)

        val info = createMockReceiver()
        Mockito.`when`(packageManager.queryBroadcastReceivers(Mockito.any(), Mockito.anyInt()))
            .thenReturn(listOf(info))
        Mockito.`when`(packageManager.queryBroadcastReceiversAsUser(Mockito.any(), Mockito.anyInt(),
                Mockito.anyInt())).thenReturn(listOf(info))
        Mockito.`when`(packageManager.getReceiverInfo(Mockito.any(), Mockito.anyInt()))
            .thenReturn(info.activityInfo)