Use external/robolectric-shadows/run_robotests.mk

This allows Settings to test against the latest framework changes.

Also replaced TestConfig with traditional robolectric.properties.

Bug: 73173204
Bug: 73892008
Test: make -j56 RunSettingsRoboTests
Change-Id: I3135b4fa5f095ba79b282a76f45dd9baa2584bc7
This commit is contained in:
James Lemieux
2018-02-26 00:51:42 -08:00
parent 229a6a2bc4
commit 22a39c2b93
752 changed files with 5096 additions and 9182 deletions

View File

@@ -16,6 +16,11 @@
package com.android.settings.enterprise;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.reset;
import static org.mockito.Mockito.when;
import android.content.ComponentName;
import android.content.Context;
import android.content.pm.ApplicationInfo;
@@ -30,7 +35,6 @@ import android.text.SpannableStringBuilder;
import com.android.settings.R;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.TestConfig;
import com.android.settings.wrapper.ConnectivityManagerWrapper;
import com.android.settings.wrapper.DevicePolicyManagerWrapper;
import com.android.settingslib.wrapper.PackageManagerWrapper;
@@ -40,25 +44,15 @@ import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import org.robolectric.annotation.Config;
import org.robolectric.shadows.ShadowApplication;
import org.robolectric.RuntimeEnvironment;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.reset;
import static org.mockito.Mockito.when;
/**
* Tests for {@link EnterprisePrivacyFeatureProviderImpl}.
*/
@RunWith(SettingsRobolectricTestRunner.class)
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
public final class EnterprisePrivacyFeatureProviderImplTest {
public class EnterprisePrivacyFeatureProviderImplTest {
private final ComponentName OWNER = new ComponentName("dummy", "component");
private final ComponentName ADMIN_1 = new ComponentName("dummy", "admin1");
@@ -69,10 +63,9 @@ public final class EnterprisePrivacyFeatureProviderImplTest {
private final int MANAGED_PROFILE_USER_ID = MY_USER_ID + 1;
private final String VPN_PACKAGE_ID = "com.example.vpn";
private final String IME_PACKAGE_ID = "com.example.ime";
private final String OTHER_PACKAGE_ID = "com.example.other";
private final String IME_PACKAGE_LABEL = "Test IME";
private List<UserInfo> mProfiles = new ArrayList();
private List<UserInfo> mProfiles = new ArrayList<>();
private @Mock Context mContext;
private @Mock DevicePolicyManagerWrapper mDevicePolicyManager;
@@ -92,7 +85,7 @@ public final class EnterprisePrivacyFeatureProviderImplTest {
resetAndInitializePackageManagerWrapper();
when(mUserManager.getProfiles(MY_USER_ID)).thenReturn(mProfiles);
mProfiles.add(new UserInfo(MY_USER_ID, "", "", 0 /* flags */));
mResources = ShadowApplication.getInstance().getApplicationContext().getResources();
mResources = RuntimeEnvironment.application.getResources();
mProvider = new EnterprisePrivacyFeatureProviderImpl(mContext, mDevicePolicyManager,
mPackageManagerWrapper, mUserManager, mConnectivityManger, mResources);
@@ -225,8 +218,8 @@ public final class EnterprisePrivacyFeatureProviderImplTest {
when(mConnectivityManger.getGlobalProxy()).thenReturn(null);
assertThat(mProvider.isGlobalHttpProxySet()).isFalse();
when(mConnectivityManger.getGlobalProxy()).thenReturn(
ProxyInfo.buildDirectProxy("localhost", 123));
when(mConnectivityManger.getGlobalProxy())
.thenReturn(ProxyInfo.buildDirectProxy("localhost", 123));
assertThat(mProvider.isGlobalHttpProxySet()).isTrue();
}
@@ -292,11 +285,9 @@ public final class EnterprisePrivacyFeatureProviderImplTest {
public void testGetNumberOfOwnerInstalledCaCertsForCurrent() {
final UserHandle userHandle = new UserHandle(UserHandle.USER_SYSTEM);
final UserHandle managedProfileUserHandle = new UserHandle(MANAGED_PROFILE_USER_ID);
final UserInfo managedProfile =
new UserInfo(MANAGED_PROFILE_USER_ID, "", "", UserInfo.FLAG_MANAGED_PROFILE);
when(mDevicePolicyManager.getOwnerInstalledCaCerts(managedProfileUserHandle))
.thenReturn(Arrays.asList(new String[] {"ca1", "ca2"}));
.thenReturn(Arrays.asList("ca1", "ca2"));
when(mDevicePolicyManager.getOwnerInstalledCaCerts(userHandle))
.thenReturn(null);
@@ -307,7 +298,7 @@ public final class EnterprisePrivacyFeatureProviderImplTest {
assertThat(mProvider.getNumberOfOwnerInstalledCaCertsForCurrentUser())
.isEqualTo(0);
when(mDevicePolicyManager.getOwnerInstalledCaCerts(userHandle))
.thenReturn(Arrays.asList(new String[] {"ca1", "ca2"}));
.thenReturn(Arrays.asList("ca1", "ca2"));
assertThat(mProvider.getNumberOfOwnerInstalledCaCertsForCurrentUser())
.isEqualTo(2);
}
@@ -321,7 +312,7 @@ public final class EnterprisePrivacyFeatureProviderImplTest {
// Without a profile
when(mDevicePolicyManager.getOwnerInstalledCaCerts(managedProfileUserHandle))
.thenReturn(Arrays.asList(new String[] {"ca1", "ca2"}));
.thenReturn(Arrays.asList("ca1", "ca2"));
assertThat(mProvider.getNumberOfOwnerInstalledCaCertsForManagedProfile())
.isEqualTo(0);
@@ -336,7 +327,7 @@ public final class EnterprisePrivacyFeatureProviderImplTest {
assertThat(mProvider.getNumberOfOwnerInstalledCaCertsForManagedProfile())
.isEqualTo(0);
when(mDevicePolicyManager.getOwnerInstalledCaCerts(managedProfileUserHandle))
.thenReturn(Arrays.asList(new String[] {"ca1", "ca2"}));
.thenReturn(Arrays.asList("ca1", "ca2"));
assertThat(mProvider.getNumberOfOwnerInstalledCaCertsForManagedProfile())
.isEqualTo(2);
}
@@ -344,9 +335,9 @@ public final class EnterprisePrivacyFeatureProviderImplTest {
@Test
public void testGetNumberOfActiveDeviceAdminsForCurrentUserAndManagedProfile() {
when(mDevicePolicyManager.getActiveAdminsAsUser(MY_USER_ID))
.thenReturn(Arrays.asList(new ComponentName[] {ADMIN_1, ADMIN_2}));
.thenReturn(Arrays.asList(ADMIN_1, ADMIN_2));
when(mDevicePolicyManager.getActiveAdminsAsUser(MANAGED_PROFILE_USER_ID))
.thenReturn(Arrays.asList(new ComponentName[] {ADMIN_1}));
.thenReturn(Arrays.asList(ADMIN_1));
assertThat(mProvider.getNumberOfActiveDeviceAdminsForCurrentUserAndManagedProfile())
.isEqualTo(2);