Merge changes from topic "cts-snapshots" am: 07f97b249c

Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1727822

Change-Id: I0fc00956cc8891e45bb2b76f6e35063949d5f0ba
This commit is contained in:
Junyu Lai
2021-06-09 08:16:01 +00:00
committed by Automerger Merge Worker

View File

@@ -15,6 +15,7 @@
*/ */
package android.net.cts package android.net.cts
import android.Manifest.permission.NETWORK_SETTINGS
import android.app.Instrumentation import android.app.Instrumentation
import android.content.Context import android.content.Context
import android.net.ConnectivityManager import android.net.ConnectivityManager
@@ -71,6 +72,8 @@ import android.os.Message
import android.os.SystemClock import android.os.SystemClock
import android.util.DebugUtils.valueToString import android.util.DebugUtils.valueToString
import androidx.test.InstrumentationRegistry import androidx.test.InstrumentationRegistry
import com.android.compatibility.common.util.SystemUtil.runWithShellPermissionIdentity
import com.android.compatibility.common.util.ThrowingSupplier
import com.android.modules.utils.build.SdkLevel import com.android.modules.utils.build.SdkLevel
import com.android.net.module.util.ArrayTrackRecord import com.android.net.module.util.ArrayTrackRecord
import com.android.testutils.CompatUtil import com.android.testutils.CompatUtil
@@ -332,7 +335,8 @@ class NetworkAgentTest {
context: Context = realContext, context: Context = realContext,
name: String? = null, name: String? = null,
initialNc: NetworkCapabilities? = null, initialNc: NetworkCapabilities? = null,
initialLp: LinkProperties? = null initialLp: LinkProperties? = null,
initialConfig: NetworkAgentConfig? = null
): TestableNetworkAgent { ): TestableNetworkAgent {
val nc = initialNc ?: NetworkCapabilities().apply { val nc = initialNc ?: NetworkCapabilities().apply {
addTransportType(TRANSPORT_TEST) addTransportType(TRANSPORT_TEST)
@@ -352,7 +356,7 @@ class NetworkAgentTest {
addLinkAddress(LinkAddress(LOCAL_IPV4_ADDRESS, 32)) addLinkAddress(LinkAddress(LOCAL_IPV4_ADDRESS, 32))
addRoute(RouteInfo(IpPrefix("0.0.0.0/0"), null, null)) addRoute(RouteInfo(IpPrefix("0.0.0.0/0"), null, null))
} }
val config = NetworkAgentConfig.Builder().build() val config = initialConfig ?: NetworkAgentConfig.Builder().build()
return TestableNetworkAgent(context, mHandlerThread.looper, nc, lp, config).also { return TestableNetworkAgent(context, mHandlerThread.looper, nc, lp, config).also {
agentsToCleanUp.add(it) agentsToCleanUp.add(it)
} }
@@ -845,4 +849,29 @@ class NetworkAgentTest {
callbackWeaker.assertNoCallback(expectedRemainingLingerDuration) callbackWeaker.assertNoCallback(expectedRemainingLingerDuration)
callbackWeaker.expectCallback<Lost>(agent1.network!!) callbackWeaker.expectCallback<Lost>(agent1.network!!)
} }
@Test
@IgnoreUpTo(Build.VERSION_CODES.R)
fun testSetSubscriberId() {
val name = "TEST-AGENT"
val imsi = UUID.randomUUID().toString()
val config = NetworkAgentConfig.Builder().setSubscriberId(imsi).build()
val request: NetworkRequest = NetworkRequest.Builder()
.clearCapabilities()
.addTransportType(TRANSPORT_TEST)
.setNetworkSpecifier(CompatUtil.makeEthernetNetworkSpecifier(name))
.build()
val callback = TestableNetworkCallback(timeoutMs = DEFAULT_TIMEOUT_MS)
requestNetwork(request, callback)
val agent = createNetworkAgent(name = name, initialConfig = config)
agent.register()
agent.markConnected()
callback.expectAvailableThenValidatedCallbacks(agent.network!!)
val snapshots = runWithShellPermissionIdentity(ThrowingSupplier {
mCM!!.allNetworkStateSnapshots }, NETWORK_SETTINGS)
val testNetworkSnapshot = snapshots.findLast { it.network == agent.network }
assertEquals(imsi, testNetworkSnapshot!!.subscriberId)
}
} }