connectedMockClient
suspend fun CoroutineScope.connectedMockClient(builder: ServiceWrapperBuilder.() -> Unit): ConnectedMockClient
Connects a mock Bluetooth device exposing the service described by builder, discovers its services, and returns a ConnectedMockClient that keeps the device connected so reads and writes route end-to-end.
The device and its keep-alive coroutines run on a dedicated child scope of the receiver so ConnectedMockClient.close can tear them down without leaving structured concurrency waiting forever. All internal waits are bounded by withTimeout so an incorrect sequence fails fast rather than hanging.