Merge "Stop using ConnectivityManager for VPNs." into sc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
c9197ec51b
@@ -40,6 +40,7 @@ import android.content.pm.UserInfo;
|
||||
import android.content.res.Resources;
|
||||
import android.net.ConnectivityManager;
|
||||
import android.net.ProxyInfo;
|
||||
import android.net.VpnManager;
|
||||
import android.os.UserHandle;
|
||||
import android.os.UserManager;
|
||||
import android.provider.Settings;
|
||||
@@ -91,6 +92,8 @@ public class EnterprisePrivacyFeatureProviderImplTest {
|
||||
private UserManager mUserManager;
|
||||
@Mock
|
||||
private ConnectivityManager mConnectivityManger;
|
||||
@Mock
|
||||
private VpnManager mVpnManager;
|
||||
private Resources mResources;
|
||||
|
||||
private EnterprisePrivacyFeatureProvider mProvider;
|
||||
@@ -106,7 +109,7 @@ public class EnterprisePrivacyFeatureProviderImplTest {
|
||||
mResources = RuntimeEnvironment.application.getResources();
|
||||
|
||||
mProvider = new EnterprisePrivacyFeatureProviderImpl(mContext, mDevicePolicyManager,
|
||||
mPackageManager, mUserManager, mConnectivityManger, mResources);
|
||||
mPackageManager, mUserManager, mConnectivityManger, mVpnManager, mResources);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -208,11 +211,10 @@ public class EnterprisePrivacyFeatureProviderImplTest {
|
||||
|
||||
@Test
|
||||
public void testIsAlwaysOnVpnSetInCurrentUser() {
|
||||
when(mConnectivityManger.getAlwaysOnVpnPackageForUser(mUserId)).thenReturn(null);
|
||||
when(mVpnManager.getAlwaysOnVpnPackageForUser(mUserId)).thenReturn(null);
|
||||
assertThat(mProvider.isAlwaysOnVpnSetInCurrentUser()).isFalse();
|
||||
|
||||
when(mConnectivityManger.getAlwaysOnVpnPackageForUser(mUserId))
|
||||
.thenReturn(VPN_PACKAGE_ID);
|
||||
when(mVpnManager.getAlwaysOnVpnPackageForUser(mUserId)).thenReturn(VPN_PACKAGE_ID);
|
||||
assertThat(mProvider.isAlwaysOnVpnSetInCurrentUser()).isTrue();
|
||||
}
|
||||
|
||||
@@ -222,11 +224,10 @@ public class EnterprisePrivacyFeatureProviderImplTest {
|
||||
|
||||
mProfiles.add(new UserInfo(mManagedProfileUserId, "", "", UserInfo.FLAG_MANAGED_PROFILE));
|
||||
|
||||
when(mConnectivityManger.getAlwaysOnVpnPackageForUser(mManagedProfileUserId))
|
||||
.thenReturn(null);
|
||||
when(mVpnManager.getAlwaysOnVpnPackageForUser(mManagedProfileUserId)).thenReturn(null);
|
||||
assertThat(mProvider.isAlwaysOnVpnSetInManagedProfile()).isFalse();
|
||||
|
||||
when(mConnectivityManger.getAlwaysOnVpnPackageForUser(mManagedProfileUserId))
|
||||
when(mVpnManager.getAlwaysOnVpnPackageForUser(mManagedProfileUserId))
|
||||
.thenReturn(VPN_PACKAGE_ID);
|
||||
assertThat(mProvider.isAlwaysOnVpnSetInManagedProfile()).isTrue();
|
||||
}
|
||||
|
@@ -21,7 +21,7 @@ import static com.google.common.truth.Truth.assertThat;
|
||||
import static org.mockito.Mockito.mock;
|
||||
import static org.mockito.Mockito.when;
|
||||
|
||||
import android.net.ConnectivityManager;
|
||||
import android.net.VpnManager;
|
||||
|
||||
import androidx.test.ext.junit.runners.AndroidJUnit4;
|
||||
|
||||
@@ -32,11 +32,11 @@ import org.junit.runner.RunWith;
|
||||
public final class VpnUtilsTest {
|
||||
@Test
|
||||
public void testIsAlwaysOnVpnSet() {
|
||||
final ConnectivityManager cm = mock(ConnectivityManager.class);
|
||||
when(cm.getAlwaysOnVpnPackageForUser(0)).thenReturn("com.example.vpn");
|
||||
assertThat(VpnUtils.isAlwaysOnVpnSet(cm, 0)).isTrue();
|
||||
final VpnManager vm = mock(VpnManager.class);
|
||||
when(vm.getAlwaysOnVpnPackageForUser(0)).thenReturn("com.example.vpn");
|
||||
assertThat(VpnUtils.isAlwaysOnVpnSet(vm, 0)).isTrue();
|
||||
|
||||
when(cm.getAlwaysOnVpnPackageForUser(0)).thenReturn(null);
|
||||
assertThat(VpnUtils.isAlwaysOnVpnSet(cm, 0)).isFalse();
|
||||
when(vm.getAlwaysOnVpnPackageForUser(0)).thenReturn(null);
|
||||
assertThat(VpnUtils.isAlwaysOnVpnSet(vm, 0)).isFalse();
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user