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

@@ -26,7 +26,6 @@ import android.content.Context;
import android.hardware.input.InputManager;
import android.view.InputDevice;
import com.android.settings.TestConfig;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import org.junit.Before;
@@ -43,7 +42,6 @@ import java.util.Arrays;
import java.util.List;
@RunWith(SettingsRobolectricTestRunner.class)
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
public class GameControllerPreferenceControllerTest {
@Mock
@@ -124,7 +122,6 @@ public class GameControllerPreferenceControllerTest {
public void updateNonIndexableKeys_shouldIncludeCategoryAndPrefKeys() {
when(mInputManager.getInputDeviceIds()).thenReturn(new int[]{});
final List<String> nonIndexables = new ArrayList<>();
mController.updateNonIndexableKeys(nonIndexables);

View File

@@ -29,7 +29,6 @@ import android.view.InputDevice;
import com.android.settings.R;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.TestConfig;
import com.android.settings.testutils.shadow.ShadowInputDevice;
import org.junit.After;
@@ -42,7 +41,6 @@ import org.robolectric.RuntimeEnvironment;
import org.robolectric.annotation.Config;
@RunWith(SettingsRobolectricTestRunner.class)
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
public class PhysicalKeyboardPreferenceControllerTest {
@Mock
@@ -84,11 +82,9 @@ public class PhysicalKeyboardPreferenceControllerTest {
}
@Test
@Config(shadows = {
ShadowInputDevice.class,
})
@Config(shadows = ShadowInputDevice.class)
public void updateState_noKeyboard_setDisconnectedSummary() {
ShadowInputDevice.sDeviceIds = new int[]{};
ShadowInputDevice.sDeviceIds = new int[0];
mController.updateState(mPreference);
verify(mPreference).setSummary(R.string.disconnected);
@@ -108,5 +104,4 @@ public class PhysicalKeyboardPreferenceControllerTest {
verify(mPreference).setSummary(device.getName());
}
}

View File

@@ -16,7 +16,9 @@
package com.android.settings.inputmethod;
import static org.mockito.Mockito.spy;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
import android.content.Context;
import android.content.res.Resources;
@@ -26,7 +28,6 @@ import android.view.textservice.TextServicesManager;
import com.android.settings.R;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.TestConfig;
import org.junit.Before;
import org.junit.Test;
@@ -35,14 +36,8 @@ import org.mockito.Answers;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import org.robolectric.RuntimeEnvironment;
import org.robolectric.annotation.Config;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
@RunWith(SettingsRobolectricTestRunner.class)
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
public class SpellCheckerPreferenceControllerTest {
@Mock(answer = Answers.RETURNS_DEEP_STUBS)

View File

@@ -16,7 +16,6 @@
package com.android.settings.inputmethod;
import static com.google.common.truth.Truth.assertThat;
import android.content.ContentProvider;
@@ -26,7 +25,6 @@ import android.database.MatrixCursor;
import android.net.Uri;
import android.provider.UserDictionary;
import com.android.settings.TestConfig;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import org.junit.Before;
@@ -34,11 +32,9 @@ import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.MockitoAnnotations;
import org.robolectric.RuntimeEnvironment;
import org.robolectric.annotation.Config;
import org.robolectric.shadows.ShadowContentResolver;
@RunWith(SettingsRobolectricTestRunner.class)
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
public class UserDictionaryCursorLoaderTest {
private ContentProvider mContentProvider;
@@ -61,7 +57,6 @@ public class UserDictionaryCursorLoaderTest {
public static class FakeProvider extends ContentProvider {
@Override
public boolean onCreate() {
return false;
@@ -100,5 +95,4 @@ public class UserDictionaryCursorLoaderTest {
return 0;
}
}
}

View File

@@ -20,12 +20,12 @@ import static com.google.common.truth.Truth.assertThat;
import android.content.ContentProvider;
import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.MatrixCursor;
import android.net.Uri;
import android.provider.UserDictionary;
import com.android.settings.TestConfig;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import org.junit.Before;
@@ -33,16 +33,13 @@ import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.MockitoAnnotations;
import org.robolectric.RuntimeEnvironment;
import org.robolectric.annotation.Config;
import org.robolectric.shadows.ShadowContentResolver;
@RunWith(SettingsRobolectricTestRunner.class)
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
public class UserDictionaryListTest {
private FakeProvider mContentProvider;
@Before
public void setUp() {
MockitoAnnotations.initMocks(this);
@@ -54,13 +51,13 @@ public class UserDictionaryListTest {
public void getUserDictionaryLocalesSet_noLocale_shouldReturnEmptySet() {
mContentProvider.hasDictionary = false;
assertThat(UserDictionaryList.getUserDictionaryLocalesSet(RuntimeEnvironment.application))
.isEmpty();
final Context context = RuntimeEnvironment.application;
assertThat(UserDictionaryList.getUserDictionaryLocalesSet(context)).isEmpty();
}
public static class FakeProvider extends ContentProvider {
public boolean hasDictionary = true;
private boolean hasDictionary = true;
@Override
public boolean onCreate() {

View File

@@ -16,7 +16,6 @@
package com.android.settings.inputmethod;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Matchers.anyString;
import static org.mockito.Matchers.eq;
@@ -36,7 +35,6 @@ import android.view.inputmethod.InputMethodManager;
import com.android.settings.R;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.TestConfig;
import org.junit.Before;
import org.junit.Test;
@@ -50,7 +48,6 @@ import java.util.ArrayList;
import java.util.List;
@RunWith(SettingsRobolectricTestRunner.class)
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
public class VirtualKeyboardPreferenceControllerTest {
@Mock
@@ -77,7 +74,7 @@ public class VirtualKeyboardPreferenceControllerTest {
@Test
public void testVirtualKeyboard_byDefault_shouldBeShown() {
final Context context = spy(RuntimeEnvironment.application.getApplicationContext());
final Context context = spy(RuntimeEnvironment.application);
mController = new VirtualKeyboardPreferenceController(context);
assertThat(mController.isAvailable()).isTrue();
}
@@ -85,7 +82,7 @@ public class VirtualKeyboardPreferenceControllerTest {
@Test
@Config(qualifiers = "mcc999")
public void testVirtualKeyboard_ifDisabled_shouldNotBeShown() {
final Context context = spy(RuntimeEnvironment.application.getApplicationContext());
final Context context = spy(RuntimeEnvironment.application);
mController = new VirtualKeyboardPreferenceController(context);
assertThat(mController.isAvailable()).isFalse();
}