From 1e7c4a494d89f9a1bd24f1eeca42f7e6a434fea8 Mon Sep 17 00:00:00 2001 From: Motomu Utsumi Date: Tue, 28 Nov 2023 23:26:32 +0900 Subject: [PATCH] Update NetworkAgent#register to compatible with old NetworkAgentTest aosp/2792436 updated NetworkAgent and NetworkAgentTest. But the NetworkAgent change was not compatible with the old NetworkAgentTest. This CL makes NetworkAgent change to compatible with the old NetworkAgentTest. aosp/2851330 will update NetworkAgentTest to support NetworkAgent change done in aosp/2792436. Once the old cts is EOL, workaround in NetworkAgentTest and NetworkAgent can be removed. Bug: 310124646 Test: atest NetworkAgentTest Change-Id: Ic99b0ab72526a9ba22653f5bb132214ef0814440 --- framework/src/android/net/NetworkAgent.java | 19 +++++++++++---- .../src/android/net/cts/NetworkAgentTest.kt | 23 +++++++++---------- 2 files changed, 25 insertions(+), 17 deletions(-) diff --git a/framework/src/android/net/NetworkAgent.java b/framework/src/android/net/NetworkAgent.java index 4e9087cbd3..574ab2fe1b 100644 --- a/framework/src/android/net/NetworkAgent.java +++ b/framework/src/android/net/NetworkAgent.java @@ -756,11 +756,20 @@ public abstract class NetworkAgent { } final ConnectivityManager cm = (ConnectivityManager) mInitialConfiguration.context .getSystemService(Context.CONNECTIVITY_SERVICE); - mNetwork = cm.registerNetworkAgent(new NetworkAgentBinder(mHandler), - new NetworkInfo(mInitialConfiguration.info), - mInitialConfiguration.properties, mInitialConfiguration.capabilities, - mInitialConfiguration.localNetworkConfig, mInitialConfiguration.score, - mInitialConfiguration.config, providerId); + if (mInitialConfiguration.localNetworkConfig == null) { + // Call registerNetworkAgent without localNetworkConfig argument to pass + // android.net.cts.NetworkAgentTest#testAgentStartsInConnecting in old cts + mNetwork = cm.registerNetworkAgent(new NetworkAgentBinder(mHandler), + new NetworkInfo(mInitialConfiguration.info), + mInitialConfiguration.properties, mInitialConfiguration.capabilities, + mInitialConfiguration.score, mInitialConfiguration.config, providerId); + } else { + mNetwork = cm.registerNetworkAgent(new NetworkAgentBinder(mHandler), + new NetworkInfo(mInitialConfiguration.info), + mInitialConfiguration.properties, mInitialConfiguration.capabilities, + mInitialConfiguration.localNetworkConfig, mInitialConfiguration.score, + mInitialConfiguration.config, providerId); + } mInitialConfiguration = null; // All this memory can now be GC'd } return mNetwork; diff --git a/tests/cts/net/src/android/net/cts/NetworkAgentTest.kt b/tests/cts/net/src/android/net/cts/NetworkAgentTest.kt index 225408c4cc..c7d65555e3 100644 --- a/tests/cts/net/src/android/net/cts/NetworkAgentTest.kt +++ b/tests/cts/net/src/android/net/cts/NetworkAgentTest.kt @@ -131,17 +131,6 @@ import com.android.testutils.TestableNetworkCallback import com.android.testutils.assertThrows import com.android.testutils.runAsShell import com.android.testutils.tryTest -import org.junit.After -import org.junit.Before -import org.junit.Test -import org.junit.runner.RunWith -import org.mockito.ArgumentMatchers.any -import org.mockito.ArgumentMatchers.argThat -import org.mockito.ArgumentMatchers.eq -import org.mockito.Mockito.doReturn -import org.mockito.Mockito.mock -import org.mockito.Mockito.timeout -import org.mockito.Mockito.verify import java.io.Closeable import java.io.IOException import java.net.DatagramSocket @@ -160,6 +149,17 @@ import kotlin.test.assertNotNull import kotlin.test.assertNull import kotlin.test.assertTrue import kotlin.test.fail +import org.junit.After +import org.junit.Before +import org.junit.Test +import org.junit.runner.RunWith +import org.mockito.ArgumentMatchers.any +import org.mockito.ArgumentMatchers.argThat +import org.mockito.ArgumentMatchers.eq +import org.mockito.Mockito.doReturn +import org.mockito.Mockito.mock +import org.mockito.Mockito.timeout +import org.mockito.Mockito.verify private const val TAG = "NetworkAgentTest" // This test doesn't really have a constraint on how fast the methods should return. If it's @@ -951,7 +951,6 @@ class NetworkAgentTest { argThat { it.detailedState == NetworkInfo.DetailedState.CONNECTING }, any(LinkProperties::class.java), any(NetworkCapabilities::class.java), - any(), // LocalNetworkConfig TODO : specify when it's public any(NetworkScore::class.java), any(NetworkAgentConfig::class.java), eq(NetworkProvider.ID_NONE))