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

Commit 53fa6bab authored by Chiachang Wang's avatar Chiachang Wang Committed by Automerger Merge Worker
Browse files

Resovle hidden connectivity methods usage in SystemUITests am: 490befc5

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14194566

Change-Id: If48cf85e5f60069b151687f96ae7133d1a479422
parents f8a437a4 490befc5
Loading
Loading
Loading
Loading
+35 −31
Original line number Diff line number Diff line
@@ -36,7 +36,6 @@ import static org.mockito.Mockito.when;

import android.app.Instrumentation;
import android.net.ConnectivityManager;
import android.net.LinkProperties;
import android.net.Network;
import android.net.NetworkCapabilities;
import android.net.NetworkRequest;
@@ -323,34 +322,37 @@ public class NetworkControllerBaseTest extends SysuiTestCase {

    public void setConnectivityViaCallbackInNetworkControllerForVcn(
            int networkType, boolean validated, boolean isConnected, VcnTransportInfo info) {
        mNetCapabilities.setTransportInfo(info);
        setConnectivityCommon(networkType, validated, isConnected);
        mDefaultCallbackInNetworkController.onCapabilitiesChanged(
                mNetwork, new NetworkCapabilities(mNetCapabilities));
        final NetworkCapabilities.Builder builder =
                new NetworkCapabilities.Builder(mNetCapabilities);
        builder.setTransportInfo(info);
        setConnectivityCommon(builder, networkType, validated, isConnected);
        mDefaultCallbackInNetworkController.onCapabilitiesChanged(mNetwork, builder.build());
    }

    public void setConnectivityViaCallbackInNetworkController(
            int networkType, boolean validated, boolean isConnected, WifiInfo wifiInfo) {
        final NetworkCapabilities.Builder builder =
                new NetworkCapabilities.Builder(mNetCapabilities);
        if (networkType == NetworkCapabilities.TRANSPORT_WIFI) {
            mNetCapabilities.setTransportInfo(wifiInfo);
            builder.setTransportInfo(wifiInfo);
        }
        setConnectivityCommon(networkType, validated, isConnected);
        mDefaultCallbackInNetworkController.onCapabilitiesChanged(
                mNetwork, new NetworkCapabilities(mNetCapabilities));
        setConnectivityCommon(builder, networkType, validated, isConnected);
        mDefaultCallbackInNetworkController.onCapabilitiesChanged(mNetwork, builder.build());
    }

    public void setConnectivityViaCallbackInWifiTracker(
            int networkType, boolean validated, boolean isConnected, WifiInfo wifiInfo) {
        final NetworkCapabilities.Builder builder =
                new NetworkCapabilities.Builder(mNetCapabilities);
        if (networkType == NetworkCapabilities.TRANSPORT_WIFI) {
            mNetCapabilities.setTransportInfo(wifiInfo);
            builder.setTransportInfo(wifiInfo);
        }
        setConnectivityCommon(networkType, validated, isConnected);
        setConnectivityCommon(builder, networkType, validated, isConnected);
        if (networkType == NetworkCapabilities.TRANSPORT_WIFI) {
            if (isConnected) {
                mNetworkCallback.onAvailable(mNetwork,
                        new NetworkCapabilities(mNetCapabilities), new LinkProperties(), false);
                mNetworkCallback.onCapabilitiesChanged(
                        mNetwork, new NetworkCapabilities(mNetCapabilities));
                final NetworkCapabilities newCap = builder.build();
                mNetworkCallback.onAvailable(mNetwork);
                mNetworkCallback.onCapabilitiesChanged(mNetwork, newCap);
            } else {
                mNetworkCallback.onLost(mNetwork);
            }
@@ -359,16 +361,16 @@ public class NetworkControllerBaseTest extends SysuiTestCase {

    public void setConnectivityViaCallbackInWifiTrackerForVcn(
            int networkType, boolean validated, boolean isConnected, VcnTransportInfo info) {
        mNetCapabilities.setTransportInfo(info);
        setConnectivityCommon(networkType, validated, isConnected);
        final NetworkCapabilities.Builder builder =
                new NetworkCapabilities.Builder(mNetCapabilities);
        builder.setTransportInfo(info);
        setConnectivityCommon(builder, networkType, validated, isConnected);
        if (networkType == NetworkCapabilities.TRANSPORT_CELLULAR) {
            if (isConnected) {
                mNetworkCallback.onAvailable(mNetwork,
                        new NetworkCapabilities(mNetCapabilities), new LinkProperties(), false);
                mNetworkCallback.onCapabilitiesChanged(
                        mNetwork, new NetworkCapabilities(mNetCapabilities));
                mDefaultCallbackInWifiTracker.onCapabilitiesChanged(
                        mNetwork, new NetworkCapabilities(mNetCapabilities));
                final NetworkCapabilities newCap = builder.build();
                mNetworkCallback.onAvailable(mNetwork);
                mNetworkCallback.onCapabilitiesChanged(mNetwork, newCap);
                mDefaultCallbackInWifiTracker.onCapabilitiesChanged(mNetwork, newCap);
            } else {
                mNetworkCallback.onLost(mNetwork);
            }
@@ -377,26 +379,28 @@ public class NetworkControllerBaseTest extends SysuiTestCase {

    public void setConnectivityViaDefaultCallbackInWifiTracker(
            int networkType, boolean validated, boolean isConnected, WifiInfo wifiInfo) {
        final NetworkCapabilities.Builder builder =
                new NetworkCapabilities.Builder(mNetCapabilities);
        if (networkType == NetworkCapabilities.TRANSPORT_WIFI) {
            mNetCapabilities.setTransportInfo(wifiInfo);
            builder.setTransportInfo(wifiInfo);
        }
        setConnectivityCommon(networkType, validated, isConnected);
        setConnectivityCommon(builder, networkType, validated, isConnected);
        mDefaultCallbackInWifiTracker.onCapabilitiesChanged(
                mNetwork, new NetworkCapabilities(mNetCapabilities));
                mNetwork, builder.build());
    }

    private void setConnectivityCommon(
    private static void setConnectivityCommon(NetworkCapabilities.Builder builder,
        int networkType, boolean validated, boolean isConnected){
        // TODO: Separate out into several NetworkCapabilities.
        if (isConnected) {
            mNetCapabilities.addTransportType(networkType);
            builder.addTransportType(networkType);
        } else {
            mNetCapabilities.removeTransportType(networkType);
            builder.removeTransportType(networkType);
        }
        if (validated) {
            mNetCapabilities.addCapability(NetworkCapabilities.NET_CAPABILITY_VALIDATED);
            builder.addCapability(NetworkCapabilities.NET_CAPABILITY_VALIDATED);
        } else {
            mNetCapabilities.removeCapability(NetworkCapabilities.NET_CAPABILITY_VALIDATED);
            builder.removeCapability(NetworkCapabilities.NET_CAPABILITY_VALIDATED);
        }
    }

+2 −2
Original line number Diff line number Diff line
@@ -202,8 +202,8 @@ public class SecurityControllerTest extends SysuiTestCase {
    @Test
    public void testNetworkRequest() {
        verify(mConnectivityManager, times(1)).registerNetworkCallback(argThat(
                (NetworkRequest request) -> request.networkCapabilities.getUids() == null
                        && request.networkCapabilities.getCapabilities().length == 0
                (NetworkRequest request) ->
                        request.equals(new NetworkRequest.Builder().clearCapabilities().build())
                ), any(NetworkCallback.class));
    }