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

@@ -29,7 +29,6 @@ import android.os.UserManager;
import android.provider.Settings.Global;
import android.support.v7.preference.PreferenceScreen;
import com.android.settings.TestConfig;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settingslib.RestrictedSwitchPreference;
import com.android.settingslib.core.lifecycle.Lifecycle;
@@ -39,11 +38,9 @@ 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;
@RunWith(SettingsRobolectricTestRunner.class)
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
public class AddUserWhenLockedPreferenceControllerTest {
@Mock(answer = RETURNS_DEEP_STUBS)
@@ -123,5 +120,4 @@ public class AddUserWhenLockedPreferenceControllerTest {
assertThat(Global.getInt(mContext.getContentResolver(), Global.ADD_USERS_WHEN_LOCKED, 0))
.isEqualTo(0);
}
}

View File

@@ -29,7 +29,6 @@ import android.support.v14.preference.SwitchPreference;
import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceScreen;
import com.android.settings.TestConfig;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import org.junit.Before;
@@ -37,14 +36,13 @@ 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.RuntimeEnvironment;
import org.robolectric.shadows.ShadowApplication;
import java.util.ArrayList;
import java.util.List;
@RunWith(SettingsRobolectricTestRunner.class)
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
public class AutoSyncDataPreferenceControllerTest {
@Mock(answer = RETURNS_DEEP_STUBS)
@@ -85,7 +83,7 @@ public class AutoSyncDataPreferenceControllerTest {
@Test
public void displayPref_linkedUser_shouldDisplay() {
when(mUserManager.isManagedProfile()).thenReturn(false);
when(mUserManager.isLinkedUser()).thenReturn(true);
when(mUserManager.isRestrictedProfile()).thenReturn(true);
mController.displayPreference(mScreen);
@@ -97,7 +95,7 @@ public class AutoSyncDataPreferenceControllerTest {
List<UserInfo> infos = new ArrayList<>();
infos.add(new UserInfo(1, "user 1", 0));
when(mUserManager.isManagedProfile()).thenReturn(false);
when(mUserManager.isLinkedUser()).thenReturn(false);
when(mUserManager.isRestrictedProfile()).thenReturn(false);
when(mUserManager.getProfiles(anyInt())).thenReturn(infos);
mController.displayPreference(mScreen);
@@ -111,7 +109,7 @@ public class AutoSyncDataPreferenceControllerTest {
infos.add(new UserInfo(1, "user 1", 0));
infos.add(new UserInfo(2, "user 2", 0));
when(mUserManager.isManagedProfile()).thenReturn(false);
when(mUserManager.isLinkedUser()).thenReturn(false);
when(mUserManager.isRestrictedProfile()).thenReturn(false);
when(mUserManager.getProfiles(anyInt())).thenReturn(infos);
mController.displayPreference(mScreen);
@@ -121,8 +119,7 @@ public class AutoSyncDataPreferenceControllerTest {
@Test
public void autoSyncData_shouldNotBeSetOnCancel() {
final ShadowApplication application = ShadowApplication.getInstance();
final Context context = application.getApplicationContext();
final Context context = RuntimeEnvironment.application;
final SwitchPreference preference = new SwitchPreference(context);
preference.setChecked(false);
mController = new AutoSyncDataPreferenceController(context, mFragment);

View File

@@ -27,7 +27,6 @@ import android.os.UserManager;
import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceScreen;
import com.android.settings.TestConfig;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import org.junit.Before;
@@ -35,14 +34,12 @@ 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 java.util.ArrayList;
import java.util.List;
@RunWith(SettingsRobolectricTestRunner.class)
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
public class AutoSyncPersonalDataPreferenceControllerTest {
@Mock(answer = RETURNS_DEEP_STUBS)
@@ -80,7 +77,7 @@ public class AutoSyncPersonalDataPreferenceControllerTest {
@Test
public void displayPref_linkedUser_shouldNotDisplay() {
when(mUserManager.isManagedProfile()).thenReturn(false);
when(mUserManager.isLinkedUser()).thenReturn(true);
when(mUserManager.isRestrictedProfile()).thenReturn(true);
mController.displayPreference(mScreen);
@@ -92,7 +89,7 @@ public class AutoSyncPersonalDataPreferenceControllerTest {
List<UserInfo> infos = new ArrayList<>();
infos.add(new UserInfo(1, "user 1", 0));
when(mUserManager.isManagedProfile()).thenReturn(false);
when(mUserManager.isLinkedUser()).thenReturn(false);
when(mUserManager.isRestrictedProfile()).thenReturn(false);
when(mUserManager.getProfiles(anyInt())).thenReturn(infos);
mController.displayPreference(mScreen);
@@ -106,12 +103,11 @@ public class AutoSyncPersonalDataPreferenceControllerTest {
infos.add(new UserInfo(1, "user 1", 0));
infos.add(new UserInfo(2, "user 2", 0));
when(mUserManager.isManagedProfile()).thenReturn(false);
when(mUserManager.isLinkedUser()).thenReturn(false);
when(mUserManager.isRestrictedProfile()).thenReturn(false);
when(mUserManager.getProfiles(anyInt())).thenReturn(infos);
mController.displayPreference(mScreen);
assertThat(mPreference.isVisible()).isTrue();
}
}

View File

@@ -16,7 +16,6 @@
package com.android.settings.users;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Answers.RETURNS_DEEP_STUBS;
import static org.mockito.Matchers.eq;
@@ -28,7 +27,6 @@ import android.content.pm.UserInfo;
import android.os.UserHandle;
import android.os.UserManager;
import com.android.settings.TestConfig;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import org.junit.Before;
@@ -36,16 +34,14 @@ import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import org.robolectric.annotation.Config;
import java.util.ArrayList;
import java.util.List;
@RunWith(SettingsRobolectricTestRunner.class)
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
public class AutoSyncWorkDataPreferenceControllerTest {
private static int MANAGED_PROFILE_ID = 10;
private static final int MANAGED_PROFILE_ID = 10;
@Mock(answer = RETURNS_DEEP_STUBS)
private UserManager mUserManager;
@@ -74,7 +70,7 @@ public class AutoSyncWorkDataPreferenceControllerTest {
@Test
public void checkIsAvailable_linkedUser_shouldNotDisplay() {
when(mUserManager.isManagedProfile()).thenReturn(false);
when(mUserManager.isLinkedUser()).thenReturn(true);
when(mUserManager.isRestrictedProfile()).thenReturn(true);
assertThat(mController.isAvailable()).isFalse();
}
@@ -82,7 +78,7 @@ public class AutoSyncWorkDataPreferenceControllerTest {
@Test
public void checkIsAvailable_singleUserProfile_shouldNotDisplay() {
when(mUserManager.isManagedProfile()).thenReturn(false);
when(mUserManager.isLinkedUser()).thenReturn(false);
when(mUserManager.isRestrictedProfile()).thenReturn(false);
final List<UserInfo> infos = new ArrayList<>();
infos.add(new UserInfo(UserHandle.USER_SYSTEM, "user 1", 0 /* flags */));
@@ -94,7 +90,7 @@ public class AutoSyncWorkDataPreferenceControllerTest {
@Test
public void checkIsAvailable_null_workProfileUserHandle_shouldNotDisplay() {
when(mUserManager.isManagedProfile()).thenReturn(false);
when(mUserManager.isLinkedUser()).thenReturn(false);
when(mUserManager.isRestrictedProfile()).thenReturn(false);
final List<UserInfo> infos = new ArrayList<>();
infos.add(new UserInfo(UserHandle.USER_SYSTEM, "user 1", 0 /* flags */));
@@ -109,7 +105,7 @@ public class AutoSyncWorkDataPreferenceControllerTest {
@Test
public void multipleProfile_shouldInitWithWorkProfileUserHandle() {
when(mUserManager.isManagedProfile()).thenReturn(false);
when(mUserManager.isLinkedUser()).thenReturn(false);
when(mUserManager.isRestrictedProfile()).thenReturn(false);
final List<UserInfo> infos = new ArrayList<>();
infos.add(new UserInfo(UserHandle.USER_SYSTEM, "user 1", 0 /* flags */));

View File

@@ -17,13 +17,11 @@
package com.android.settings.users;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Mockito.when;
import android.content.Context;
import android.os.UserManager;
import com.android.settings.TestConfig;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import org.junit.Before;
@@ -31,10 +29,8 @@ import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import org.robolectric.annotation.Config;
@RunWith(SettingsRobolectricTestRunner.class)
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
public class UserCapabilitiesTest {
@Mock

View File

@@ -16,31 +16,29 @@
package com.android.settings.users;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Mockito.when;
import android.content.Context;
import android.os.UserHandle;
import android.os.UserManager;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.TestConfig;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import org.robolectric.annotation.Config;
import java.util.Arrays;
import java.util.List;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Mockito.when;
@RunWith(SettingsRobolectricTestRunner.class)
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
public class UserFeatureProviderImplTest {
public static final int FIRST_USER_ID = 0;
public static final int SECOND_USER_ID = 4;
private static final int FIRST_USER_ID = 0;
private static final int SECOND_USER_ID = 4;
@Mock
private Context mContext;

View File

@@ -25,7 +25,6 @@ import android.os.UserHandle;
import android.view.View;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.TestConfig;
import com.android.settingslib.RestrictedPreferenceHelper;
import org.junit.Before;
@@ -34,11 +33,9 @@ import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import org.robolectric.RuntimeEnvironment;
import org.robolectric.annotation.Config;
import org.robolectric.util.ReflectionHelpers;
@RunWith(SettingsRobolectricTestRunner.class)
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
public class UserPreferenceTest {
@Mock

View File

@@ -27,7 +27,6 @@ import android.content.pm.UserInfo;
import android.os.UserManager;
import com.android.settings.R;
import com.android.settings.TestConfig;
import com.android.settings.dashboard.SummaryLoader;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
@@ -37,14 +36,14 @@ import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import org.robolectric.Robolectric;
import org.robolectric.annotation.Config;
@RunWith(SettingsRobolectricTestRunner.class)
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
public class UserSettingsTest {
@Mock private UserManager mUserManager;
@Mock private SummaryLoader mSummaryLoader;
@Mock
private UserManager mUserManager;
@Mock
private SummaryLoader mSummaryLoader;
private Activity mActivity;
private SummaryLoader.SummaryProvider mSummaryProvider;
@@ -54,8 +53,8 @@ public class UserSettingsTest {
mActivity = spy(Robolectric.buildActivity(Activity.class).get());
when((Object) mActivity.getSystemService(UserManager.class)).thenReturn(mUserManager);
mSummaryProvider = UserSettings.SUMMARY_PROVIDER_FACTORY.createSummaryProvider(
mActivity, mSummaryLoader);
mSummaryProvider =
UserSettings.SUMMARY_PROVIDER_FACTORY.createSummaryProvider(mActivity, mSummaryLoader);
}
@Test
@@ -67,8 +66,8 @@ public class UserSettingsTest {
mSummaryProvider.setListening(true);
verify(mSummaryLoader).setSummary(mSummaryProvider,
mActivity.getString(R.string.users_summary, name));
verify(mSummaryLoader)
.setSummary(mSummaryProvider, mActivity.getString(R.string.users_summary, name));
}
@Test