Cache CDM associations
Maintain an up-to-date in-memory cache of the CDM associations for performance
Test: atest CompanionDeviceManagerTest
Change-Id: Id521afb5a367563d12b2087b867ed26201341658
diff --git a/tests/tests/os/src/android/os/cts/CompanionDeviceManagerTest.kt b/tests/tests/os/src/android/os/cts/CompanionDeviceManagerTest.kt
index 773551b..84fad25 100644
--- a/tests/tests/os/src/android/os/cts/CompanionDeviceManagerTest.kt
+++ b/tests/tests/os/src/android/os/cts/CompanionDeviceManagerTest.kt
@@ -26,6 +26,8 @@
import com.android.compatibility.common.util.SystemUtil.runShellCommand
import com.android.compatibility.common.util.SystemUtil.runWithShellPermissionIdentity
import com.android.compatibility.common.util.ThrowingSupplier
+import org.hamcrest.CoreMatchers.containsString
+import org.junit.Assert.assertThat
import org.junit.Assume.assumeTrue
import org.junit.Before
import org.junit.Test
@@ -99,4 +101,22 @@
COMPANION_APPROVE_WIFI_CONNECTIONS))
assertFalse(isShellAssociated(DUMMY_MAC_ADDRESS, SHELL_PACKAGE_NAME))
}
+
+ @AppModeFull(reason = "Companion API for non-instant apps only")
+ @Test
+ fun testDump() {
+ val userId = context.userId
+ val packageName = context.packageName
+
+ try {
+ runShellCommand(
+ "cmd companiondevice associate $userId $packageName $DUMMY_MAC_ADDRESS")
+ val output = runShellCommand("dumpsys companiondevice")
+ assertThat(output, containsString(packageName))
+ assertThat(output, containsString(DUMMY_MAC_ADDRESS))
+ } finally {
+ runShellCommand(
+ "cmd companiondevice disassociate $userId $packageName $DUMMY_MAC_ADDRESS")
+ }
+ }
}