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

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

Merge "Remove hidden connectivity method access in FrameworksVcnTests" into sc-dev am: 9420094f

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

Change-Id: I988d2ea65dd292226bfeb289d30065cd0a80013a
parents 4cb000af 9420094f
Loading
Loading
Loading
Loading
+3 −3
Original line number Original line Diff line number Diff line
@@ -39,6 +39,7 @@ import static org.junit.Assert.fail;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.anyInt;
import static org.mockito.ArgumentMatchers.anyInt;
import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.CALLS_REAL_METHODS;
import static org.mockito.Mockito.any;
import static org.mockito.Mockito.any;
import static org.mockito.Mockito.argThat;
import static org.mockito.Mockito.argThat;
import static org.mockito.Mockito.doAnswer;
import static org.mockito.Mockito.doAnswer;
@@ -59,7 +60,6 @@ import android.net.ConnectivityManager;
import android.net.LinkProperties;
import android.net.LinkProperties;
import android.net.Network;
import android.net.Network;
import android.net.NetworkCapabilities;
import android.net.NetworkCapabilities;
import android.net.NetworkCapabilities.Transport;
import android.net.NetworkRequest;
import android.net.NetworkRequest;
import android.net.TelephonyNetworkSpecifier;
import android.net.TelephonyNetworkSpecifier;
import android.net.vcn.IVcnStatusCallback;
import android.net.vcn.IVcnStatusCallback;
@@ -657,7 +657,7 @@ public class VcnManagementServiceTest {


    private void verifyMergedNetworkCapabilities(
    private void verifyMergedNetworkCapabilities(
            NetworkCapabilities mergedCapabilities,
            NetworkCapabilities mergedCapabilities,
            @Transport int transportType,
            int transportType,
            boolean isVcnManaged,
            boolean isVcnManaged,
            boolean isRestricted) {
            boolean isRestricted) {
        assertTrue(mergedCapabilities.hasTransport(transportType));
        assertTrue(mergedCapabilities.hasTransport(transportType));
@@ -779,7 +779,7 @@ public class VcnManagementServiceTest {
                .registerNetworkCallback(
                .registerNetworkCallback(
                        eq(new NetworkRequest.Builder().clearCapabilities().build()),
                        eq(new NetworkRequest.Builder().clearCapabilities().build()),
                        captor.capture());
                        captor.capture());
        captor.getValue().onCapabilitiesChanged(new Network(0), caps);
        captor.getValue().onCapabilitiesChanged(mock(Network.class, CALLS_REAL_METHODS), caps);
    }
    }


    @Test
    @Test
+16 −14
Original line number Original line Diff line number Diff line
@@ -25,7 +25,10 @@ import static android.net.NetworkCapabilities.TRANSPORT_WIFI;
import static org.junit.Assert.assertArrayEquals;
import static org.junit.Assert.assertArrayEquals;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
import static org.junit.Assert.assertTrue;
import static org.mockito.ArgumentMatchers.anyLong;
import static org.mockito.Matchers.eq;
import static org.mockito.Matchers.eq;
import static org.mockito.Mockito.CALLS_REAL_METHODS;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.verify;


@@ -83,31 +86,30 @@ public class VcnGatewayConnectionTest extends VcnGatewayConnectionTestBase {
        super.setUp();
        super.setUp();


        mWifiInfo = mock(WifiInfo.class);
        mWifiInfo = mock(WifiInfo.class);
        doReturn(mWifiInfo).when(mWifiInfo).makeCopy(anyLong());
    }
    }


    private void verifyBuildNetworkCapabilitiesCommon(int transportType) {
    private void verifyBuildNetworkCapabilitiesCommon(int transportType) {
        final NetworkCapabilities underlyingCaps = new NetworkCapabilities();
        final NetworkCapabilities.Builder capBuilder = new NetworkCapabilities.Builder();
        underlyingCaps.addTransportType(transportType);
        capBuilder.addTransportType(transportType);
        underlyingCaps.addCapability(NET_CAPABILITY_NOT_VCN_MANAGED);
        capBuilder.addCapability(NET_CAPABILITY_NOT_VCN_MANAGED);
        underlyingCaps.addCapability(NET_CAPABILITY_NOT_METERED);
        capBuilder.addCapability(NET_CAPABILITY_NOT_METERED);
        underlyingCaps.addCapability(NET_CAPABILITY_NOT_ROAMING);
        capBuilder.addCapability(NET_CAPABILITY_NOT_ROAMING);


        if (transportType == TRANSPORT_WIFI) {
        if (transportType == TRANSPORT_WIFI) {
            underlyingCaps.setTransportInfo(mWifiInfo);
            capBuilder.setTransportInfo(mWifiInfo);
            underlyingCaps.setOwnerUid(TEST_UID);
            capBuilder.setOwnerUid(TEST_UID);
        } else if (transportType == TRANSPORT_CELLULAR) {
        } else if (transportType == TRANSPORT_CELLULAR) {
            underlyingCaps.setAdministratorUids(new int[] {TEST_UID});
            capBuilder.setNetworkSpecifier(
            underlyingCaps.setNetworkSpecifier(
                    new TelephonyNetworkSpecifier(TEST_SUBSCRIPTION_ID_1));
                    new TelephonyNetworkSpecifier(TEST_SUBSCRIPTION_ID_1));
        }
        }

        capBuilder.setAdministratorUids(new int[] {TEST_UID});
        UnderlyingNetworkRecord record =
        UnderlyingNetworkRecord record = new UnderlyingNetworkRecord(
                new UnderlyingNetworkRecord(
                mock(Network.class, CALLS_REAL_METHODS),
                        new Network(0), underlyingCaps, new LinkProperties(), false);
                capBuilder.build(), new LinkProperties(), false);
        final NetworkCapabilities vcnCaps =
        final NetworkCapabilities vcnCaps =
                VcnGatewayConnection.buildNetworkCapabilities(
                VcnGatewayConnection.buildNetworkCapabilities(
                        VcnGatewayConnectionConfigTest.buildTestConfig(), record);
                        VcnGatewayConnectionConfigTest.buildTestConfig(), record);

        assertTrue(vcnCaps.hasTransport(TRANSPORT_CELLULAR));
        assertTrue(vcnCaps.hasTransport(TRANSPORT_CELLULAR));
        assertTrue(vcnCaps.hasCapability(NET_CAPABILITY_NOT_METERED));
        assertTrue(vcnCaps.hasCapability(NET_CAPABILITY_NOT_METERED));
        assertTrue(vcnCaps.hasCapability(NET_CAPABILITY_NOT_ROAMING));
        assertTrue(vcnCaps.hasCapability(NET_CAPABILITY_NOT_ROAMING));
+3 −2
Original line number Original line Diff line number Diff line
@@ -26,6 +26,7 @@ import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertTrue;
import static org.junit.Assert.assertTrue;
import static org.mockito.Matchers.any;
import static org.mockito.Matchers.any;
import static org.mockito.Matchers.eq;
import static org.mockito.Matchers.eq;
import static org.mockito.Mockito.CALLS_REAL_METHODS;
import static org.mockito.Mockito.atLeastOnce;
import static org.mockito.Mockito.atLeastOnce;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.mock;
@@ -93,7 +94,7 @@ public class VcnGatewayConnectionTestBase {


    protected static final UnderlyingNetworkRecord TEST_UNDERLYING_NETWORK_RECORD_1 =
    protected static final UnderlyingNetworkRecord TEST_UNDERLYING_NETWORK_RECORD_1 =
            new UnderlyingNetworkRecord(
            new UnderlyingNetworkRecord(
                    new Network(0),
                    mock(Network.class, CALLS_REAL_METHODS),
                    new NetworkCapabilities(),
                    new NetworkCapabilities(),
                    new LinkProperties(),
                    new LinkProperties(),
                    false /* blocked */);
                    false /* blocked */);
@@ -104,7 +105,7 @@ public class VcnGatewayConnectionTestBase {


    protected static final UnderlyingNetworkRecord TEST_UNDERLYING_NETWORK_RECORD_2 =
    protected static final UnderlyingNetworkRecord TEST_UNDERLYING_NETWORK_RECORD_2 =
            new UnderlyingNetworkRecord(
            new UnderlyingNetworkRecord(
                    new Network(1),
                    mock(Network.class, CALLS_REAL_METHODS),
                    new NetworkCapabilities(),
                    new NetworkCapabilities(),
                    new LinkProperties(),
                    new LinkProperties(),
                    false /* blocked */);
                    false /* blocked */);
+0 −31
Original line number Original line Diff line number Diff line
@@ -22,8 +22,6 @@ import static org.mockito.Mockito.verifyNoMoreInteractions;


import android.annotation.NonNull;
import android.annotation.NonNull;
import android.content.Context;
import android.content.Context;
import android.net.ConnectivityManager;
import android.net.NetworkCapabilities;
import android.net.NetworkRequest;
import android.net.NetworkRequest;
import android.os.test.TestLooper;
import android.os.test.TestLooper;


@@ -36,9 +34,6 @@ import org.junit.Before;
import org.junit.Test;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runner.RunWith;


import java.util.ArrayList;
import java.util.List;

/** Tests for TelephonySubscriptionTracker */
/** Tests for TelephonySubscriptionTracker */
@RunWith(AndroidJUnit4.class)
@RunWith(AndroidJUnit4.class)
@SmallTest
@SmallTest
@@ -46,8 +41,6 @@ public class VcnNetworkProviderTest {
    private static final int TEST_SCORE_UNSATISFIED = 0;
    private static final int TEST_SCORE_UNSATISFIED = 0;
    private static final int TEST_SCORE_HIGH = 100;
    private static final int TEST_SCORE_HIGH = 100;
    private static final int TEST_PROVIDER_ID = 1;
    private static final int TEST_PROVIDER_ID = 1;
    private static final int TEST_LEGACY_TYPE = ConnectivityManager.TYPE_MOBILE;
    private static final NetworkRequest.Type TEST_REQUEST_TYPE = NetworkRequest.Type.REQUEST;


    @NonNull private final Context mContext;
    @NonNull private final Context mContext;
    @NonNull private final TestLooper mTestLooper;
    @NonNull private final TestLooper mTestLooper;
@@ -94,28 +87,4 @@ public class VcnNetworkProviderTest {
        mVcnNetworkProvider.onNetworkRequested(request, TEST_SCORE_UNSATISFIED, TEST_PROVIDER_ID);
        mVcnNetworkProvider.onNetworkRequested(request, TEST_SCORE_UNSATISFIED, TEST_PROVIDER_ID);
        verifyNoMoreInteractions(mListener);
        verifyNoMoreInteractions(mListener);
    }
    }

    @Test
    public void testCachedRequestsPassedOnRegister() throws Exception {
        final List<NetworkRequest> requests = new ArrayList<>();

        for (int i = 0; i < 10; i++) {
            final NetworkRequest request =
                    new NetworkRequest(
                            new NetworkCapabilities(),
                            TEST_LEGACY_TYPE,
                            i /* requestId */,
                            TEST_REQUEST_TYPE);

            requests.add(request);
            mVcnNetworkProvider.onNetworkRequested(request, i, i + 1);
        }

        mVcnNetworkProvider.registerListener(mListener);
        for (int i = 0; i < requests.size(); i++) {
            final NetworkRequest request = requests.get(i);
            verify(mListener).onNetworkRequested(request, i, i + 1);
        }
        verifyNoMoreInteractions(mListener);
    }
}
}