Merge pull request #6191 from robolectric/piper_351888459
Add opt-in lazy loading of application+instrumentation in Robolectric
diff --git a/annotations/src/main/java/org/robolectric/annotation/LazyLoadApplication.java b/annotations/src/main/java/org/robolectric/annotation/LazyLoadApplication.java
new file mode 100644
index 0000000..ba72fc9
--- /dev/null
+++ b/annotations/src/main/java/org/robolectric/annotation/LazyLoadApplication.java
@@ -0,0 +1,28 @@
+package org.robolectric.annotation;
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+/**
+ * A {@link org.robolectric.pluginapi.config.Configurer} annotation that dictates whether or not
+ * Robolectric should lazily instantiate the Application under test (as well as the test
+ * Instrumentation).
+ *
+ * <p>In particular, any test with {@link LazyLoad.ON} that does not need either of the Application
+ * or the Instrumentation will load neither (and recoup the associated cost)
+ */
+@Retention(RetentionPolicy.RUNTIME)
+@Target({ElementType.PACKAGE, ElementType.TYPE, ElementType.METHOD})
+public @interface LazyLoadApplication {
+
+ /** Whether or not the Application should be lazily loaded */
+ LazyLoad value();
+
+ /** Whether or not the Application should be lazily loaded */
+ enum LazyLoad {
+ ON,
+ OFF,
+ }
+}
diff --git a/robolectric/src/main/java/org/robolectric/DefaultTestLifecycle.java b/robolectric/src/main/java/org/robolectric/DefaultTestLifecycle.java
index 7602d54..2e002eb 100644
--- a/robolectric/src/main/java/org/robolectric/DefaultTestLifecycle.java
+++ b/robolectric/src/main/java/org/robolectric/DefaultTestLifecycle.java
@@ -2,6 +2,13 @@
import java.lang.reflect.Method;
+/**
+ * The default {@link TestLifecycle} used by Robolectric.
+ *
+ * <p>Owing to tradeoffs, this class is not guaranteed to work with {@link
+ * org.robolectric.annotation.LazyLoadApplication} enabled on tests where the application is
+ * inferred from the apk (instead of explicitly specified in AndroidManifest.xml).
+ */
public class DefaultTestLifecycle implements TestLifecycle {
/**
@@ -10,14 +17,14 @@
* @param method the test method about to be run
*/
@Override public void beforeTest(final Method method) {
- if (RuntimeEnvironment.application instanceof TestLifecycleApplication) {
- ((TestLifecycleApplication) RuntimeEnvironment.application).beforeTest(method);
+ if (isTestLifecycleApplicationClass(RuntimeEnvironment.getConfiguredApplicationClass())) {
+ ((TestLifecycleApplication) RuntimeEnvironment.getApplication()).beforeTest(method);
}
}
@Override public void prepareTest(final Object test) {
- if (RuntimeEnvironment.application instanceof TestLifecycleApplication) {
- ((TestLifecycleApplication) RuntimeEnvironment.application).prepareTest(test);
+ if (isTestLifecycleApplicationClass(RuntimeEnvironment.getConfiguredApplicationClass())) {
+ ((TestLifecycleApplication) RuntimeEnvironment.getApplication()).prepareTest(test);
}
}
@@ -27,8 +34,13 @@
* @param method the test method that just ran.
*/
@Override public void afterTest(final Method method) {
- if (RuntimeEnvironment.application instanceof TestLifecycleApplication) {
- ((TestLifecycleApplication) RuntimeEnvironment.application).afterTest(method);
+ if (isTestLifecycleApplicationClass(RuntimeEnvironment.getConfiguredApplicationClass())) {
+ ((TestLifecycleApplication) RuntimeEnvironment.getApplication()).afterTest(method);
}
}
+
+ private boolean isTestLifecycleApplicationClass(Class<?> applicationClass) {
+ return applicationClass != null
+ && TestLifecycleApplication.class.isAssignableFrom(applicationClass);
+ }
}
diff --git a/robolectric/src/main/java/org/robolectric/Robolectric.java b/robolectric/src/main/java/org/robolectric/Robolectric.java
index 431e459..3f99f77 100644
--- a/robolectric/src/main/java/org/robolectric/Robolectric.java
+++ b/robolectric/src/main/java/org/robolectric/Robolectric.java
@@ -277,11 +277,12 @@
public static org.robolectric.android.AttributeSetBuilder buildAttributeSet() {
if (useLegacy()) {
return new AttributeSetBuilderImpl(
- new LegacyResourceResolver(RuntimeEnvironment.application,
+ new LegacyResourceResolver(
+ RuntimeEnvironment.getApplication(),
RuntimeEnvironment.getCompileTimeResourceTable())) {};
} else {
return new AttributeSetBuilderImpl(
- new ArscResourceResolver(RuntimeEnvironment.application)) {};
+ new ArscResourceResolver(RuntimeEnvironment.getApplication())) {};
}
}
diff --git a/robolectric/src/main/java/org/robolectric/android/internal/AndroidTestEnvironment.java b/robolectric/src/main/java/org/robolectric/android/internal/AndroidTestEnvironment.java
index dcb5453..e9e0d40 100755
--- a/robolectric/src/main/java/org/robolectric/android/internal/AndroidTestEnvironment.java
+++ b/robolectric/src/main/java/org/robolectric/android/internal/AndroidTestEnvironment.java
@@ -27,6 +27,8 @@
import android.os.Looper;
import android.provider.FontsContract;
import android.util.DisplayMetrics;
+import androidx.test.platform.app.InstrumentationProvider;
+import androidx.test.platform.app.InstrumentationRegistry;
import com.google.common.annotations.VisibleForTesting;
import java.lang.reflect.Method;
import java.nio.file.FileSystem;
@@ -41,6 +43,7 @@
import org.robolectric.RuntimeEnvironment;
import org.robolectric.android.Bootstrap;
import org.robolectric.annotation.Config;
+import org.robolectric.annotation.LazyLoadApplication.LazyLoad;
import org.robolectric.annotation.LooperMode;
import org.robolectric.config.ConfigurationRegistry;
import org.robolectric.internal.ResourcesMode;
@@ -167,7 +170,23 @@
preloadClasses(apiLevel);
- installAndCreateApplication(appManifest, config, androidConfiguration, displayMetrics);
+ if (configuration.get(LazyLoad.class) == LazyLoad.ON) {
+ RuntimeEnvironment.setConfiguredApplicationClass(
+ getApplicationClass(appManifest, config, new ApplicationInfo()));
+
+ InstrumentationProvider provider =
+ new InstrumentationProvider() {
+ @Override
+ public Instrumentation provide() {
+ return installAndCreateApplication(
+ appManifest, config, androidConfiguration, displayMetrics);
+ }
+ };
+
+ InstrumentationRegistry.registerInstrumentationProvider(provider, new Bundle());
+ } else { // LoadingMode.EAGER
+ installAndCreateApplication(appManifest, config, androidConfiguration, displayMetrics);
+ }
}
// If certain Android classes are required to be loaded in a particular order, do so here.
@@ -185,9 +204,11 @@
}
}
- private void installAndCreateApplication(AndroidManifest appManifest, Config config,
- android.content.res.Configuration androidConfiguration, DisplayMetrics displayMetrics) {
-
+ private Instrumentation installAndCreateApplication(
+ AndroidManifest appManifest,
+ Config config,
+ android.content.res.Configuration androidConfiguration,
+ DisplayMetrics displayMetrics) {
final ActivityThread activityThread = ReflectionHelpers.newInstance(ActivityThread.class);
RuntimeEnvironment.setActivityThread(activityThread);
final _ActivityThread_ _activityThread_ = reflector(_ActivityThread_.class, activityThread);
@@ -233,6 +254,8 @@
systemResources.updateConfiguration(androidConfiguration, displayMetrics);
Application application = createApplication(appManifest, config, applicationInfo);
+ RuntimeEnvironment.setConfiguredApplicationClass(application.getClass());
+
RuntimeEnvironment.application = application;
Instrumentation instrumentation =
@@ -294,6 +317,8 @@
PerfStatsCollector.getInstance()
.measure("application onCreate()", () -> application.onCreate());
}
+
+ return instrumentation;
}
private Package loadAppPackage(Config config, AndroidManifest appManifest) {
@@ -395,41 +420,27 @@
@VisibleForTesting
static Application createApplication(AndroidManifest appManifest, Config config,
ApplicationInfo applicationInfo) {
- Application application = null;
+ return ReflectionHelpers.callConstructor(
+ getApplicationClass(appManifest, config, applicationInfo));
+ }
+
+ private static Class<? extends Application> getApplicationClass(
+ AndroidManifest appManifest, Config config, ApplicationInfo applicationInfo) {
+ Class<? extends Application> applicationClass = null;
if (config != null && !Config.Builder.isDefaultApplication(config.application())) {
if (config.application().getCanonicalName() != null) {
- Class<? extends Application> applicationClass;
try {
applicationClass = ClassNameResolver.resolve(null, config.application().getName());
} catch (ClassNotFoundException e) {
throw new RuntimeException(e);
}
- application = ReflectionHelpers.callConstructor(applicationClass);
}
} else if (appManifest != null && appManifest.getApplicationName() != null) {
- Class<? extends Application> applicationClass = null;
try {
- applicationClass = ClassNameResolver.resolve(appManifest.getPackageName(),
- getTestApplicationName(appManifest.getApplicationName()));
- } catch (ClassNotFoundException e) {
- // no problem
- }
-
- if (applicationClass == null) {
- try {
- applicationClass = ClassNameResolver.resolve(appManifest.getPackageName(),
- appManifest.getApplicationName());
- } catch (ClassNotFoundException e) {
- throw new RuntimeException(e);
- }
- }
-
- application = ReflectionHelpers.callConstructor(applicationClass);
- } else if (applicationInfo.className != null) {
- Class<? extends Application> applicationClass = null;
- try {
- applicationClass = (Class<? extends Application>) Class.forName(
- getTestApplicationName(applicationInfo.className));
+ applicationClass =
+ ClassNameResolver.resolve(
+ appManifest.getPackageName(),
+ getTestApplicationName(appManifest.getApplicationName()));
} catch (ClassNotFoundException e) {
// no problem
}
@@ -437,18 +448,36 @@
if (applicationClass == null) {
try {
applicationClass =
- (Class<? extends Application>) Class.forName(applicationInfo.className);
+ ClassNameResolver.resolve(
+ appManifest.getPackageName(), appManifest.getApplicationName());
} catch (ClassNotFoundException e) {
throw new RuntimeException(e);
}
}
-
- application = ReflectionHelpers.callConstructor(applicationClass);
} else {
- application = new Application();
+ if (applicationInfo.className != null) {
+ try {
+ applicationClass =
+ (Class<? extends Application>)
+ Class.forName(getTestApplicationName(applicationInfo.className));
+ } catch (ClassNotFoundException e) {
+ // no problem
+ }
+
+ if (applicationClass == null) {
+ try {
+ applicationClass =
+ (Class<? extends Application>) Class.forName(applicationInfo.className);
+ } catch (ClassNotFoundException e) {
+ throw new RuntimeException(e);
+ }
+ }
+ } else {
+ applicationClass = Application.class;
+ }
}
- return application;
+ return applicationClass;
}
@VisibleForTesting
diff --git a/robolectric/src/main/java/org/robolectric/plugins/LazyLoadingConfigurer.java b/robolectric/src/main/java/org/robolectric/plugins/LazyLoadingConfigurer.java
new file mode 100644
index 0000000..1fca3c7
--- /dev/null
+++ b/robolectric/src/main/java/org/robolectric/plugins/LazyLoadingConfigurer.java
@@ -0,0 +1,67 @@
+package org.robolectric.plugins;
+
+import com.google.auto.service.AutoService;
+import java.lang.reflect.Method;
+import javax.annotation.Nonnull;
+import org.robolectric.annotation.LazyLoadApplication;
+import org.robolectric.annotation.LazyLoadApplication.LazyLoad;
+import org.robolectric.pluginapi.config.Configurer;
+
+/**
+ * A {@link org.robolectric.pluginapi.config.Configurer} that reads the {@link LazyLoadApplication}
+ * to dictate whether Robolectric should lazily instantiate the Application under test (as well as
+ * the test Instrumentation).
+ */
+@AutoService(Configurer.class)
+public class LazyLoadingConfigurer implements Configurer<LazyLoad> {
+
+ @Override
+ public Class<LazyLoad> getConfigClass() {
+ return LazyLoad.class;
+ }
+
+ @Nonnull
+ @Override
+ public LazyLoad defaultConfig() {
+ return LazyLoad.OFF;
+ }
+
+ @Nonnull
+ @Override
+ public LazyLoad getConfigFor(@Nonnull String packageName) {
+ try {
+ Package pkg = Class.forName(packageName + ".package-info").getPackage();
+ if (pkg.isAnnotationPresent(LazyLoadApplication.class)) {
+ return pkg.getAnnotation(LazyLoadApplication.class).value();
+ }
+ } catch (ClassNotFoundException e) {
+ // ignore
+ }
+ return defaultConfig();
+ }
+
+ @Override
+ public LazyLoad getConfigFor(@Nonnull Class<?> testClass) {
+ if (testClass.isAnnotationPresent(LazyLoadApplication.class)) {
+ return testClass.getAnnotation(LazyLoadApplication.class).value();
+ } else {
+ return defaultConfig();
+ }
+ }
+
+ @Override
+ public LazyLoad getConfigFor(@Nonnull Method method) {
+ if (method.isAnnotationPresent(LazyLoadApplication.class)) {
+ return method.getAnnotation(LazyLoadApplication.class).value();
+ } else {
+ return defaultConfig();
+ }
+ }
+
+ /** "Merges" two configurations together. Child configuration always overrides the parent */
+ @Nonnull
+ @Override
+ public LazyLoad merge(@Nonnull LazyLoad parentConfig, @Nonnull LazyLoad childConfig) {
+ return childConfig;
+ }
+}
diff --git a/robolectric/src/test/java/org/robolectric/android/DrawableResourceLoaderTest.java b/robolectric/src/test/java/org/robolectric/android/DrawableResourceLoaderTest.java
index ccc13bb..87ddb07 100644
--- a/robolectric/src/test/java/org/robolectric/android/DrawableResourceLoaderTest.java
+++ b/robolectric/src/test/java/org/robolectric/android/DrawableResourceLoaderTest.java
@@ -6,7 +6,6 @@
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assume.assumeTrue;
-import static org.robolectric.RuntimeEnvironment.application;
import static org.robolectric.shadows.ShadowAssetManager.useLegacy;
import android.animation.Animator;
@@ -23,6 +22,7 @@
import org.junit.Test;
import org.junit.runner.RunWith;
import org.robolectric.R;
+import org.robolectric.RuntimeEnvironment;
import org.robolectric.annotation.Config;
@RunWith(AndroidJUnit4.class)
@@ -94,7 +94,8 @@
@Test
public void shouldCreateAnimators() throws Exception {
- Animator animator = AnimatorInflater.loadAnimator(application, R.animator.spinning);
+ Animator animator =
+ AnimatorInflater.loadAnimator(RuntimeEnvironment.getApplication(), R.animator.spinning);
assertThat(animator).isInstanceOf((Class<? extends Animator>) Animator.class);
}
diff --git a/robolectric/src/test/java/org/robolectric/plugins/LazyLoadingConfigurerTest.java b/robolectric/src/test/java/org/robolectric/plugins/LazyLoadingConfigurerTest.java
new file mode 100644
index 0000000..0cfbb37
--- /dev/null
+++ b/robolectric/src/test/java/org/robolectric/plugins/LazyLoadingConfigurerTest.java
@@ -0,0 +1,22 @@
+package org.robolectric.plugins;
+
+import static com.google.common.truth.Truth.assertThat;
+import static org.robolectric.annotation.LazyLoadApplication.LazyLoad.OFF;
+import static org.robolectric.annotation.LazyLoadApplication.LazyLoad.ON;
+
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.JUnit4;
+
+/** Unit test for {@link LazyLoadingConfigurer} */
+@RunWith(JUnit4.class)
+public class LazyLoadingConfigurerTest {
+
+ private LazyLoadingConfigurer configurer = new LazyLoadingConfigurer();
+
+ @Test
+ public void merge_explicitChildConfigOverridesParent() {
+ assertThat(configurer.merge(ON, OFF)).isEqualTo(OFF);
+ assertThat(configurer.merge(OFF, ON)).isEqualTo(ON);
+ }
+}
diff --git a/robolectric/src/test/java/org/robolectric/shadows/ShadowActivityTest.java b/robolectric/src/test/java/org/robolectric/shadows/ShadowActivityTest.java
index e6657b2..8dfce7f 100644
--- a/robolectric/src/test/java/org/robolectric/shadows/ShadowActivityTest.java
+++ b/robolectric/src/test/java/org/robolectric/shadows/ShadowActivityTest.java
@@ -20,7 +20,7 @@
import static org.junit.Assert.fail;
import static org.robolectric.Robolectric.buildActivity;
import static org.robolectric.Robolectric.setupActivity;
-import static org.robolectric.RuntimeEnvironment.application;
+import static org.robolectric.RuntimeEnvironment.getApplication;
import static org.robolectric.RuntimeEnvironment.systemContext;
import static org.robolectric.Shadows.shadowOf;
import static org.robolectric.annotation.LooperMode.Mode.LEGACY;
@@ -546,9 +546,9 @@
}
@Test public void setContentView_shouldReplaceOldContentView() throws Exception {
- View view1 = new View(application);
+ View view1 = new View(getApplication());
view1.setId(R.id.burritos);
- View view2 = new View(application);
+ View view2 = new View(getApplication());
view2.setId(R.id.button);
Activity activity = buildActivity(Activity.class).create().get();
diff --git a/robolectric/src/test/java/org/robolectric/shadows/ShadowAlertDialogTest.java b/robolectric/src/test/java/org/robolectric/shadows/ShadowAlertDialogTest.java
index d5b45f1..eada085 100644
--- a/robolectric/src/test/java/org/robolectric/shadows/ShadowAlertDialogTest.java
+++ b/robolectric/src/test/java/org/robolectric/shadows/ShadowAlertDialogTest.java
@@ -7,7 +7,7 @@
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertTrue;
-import static org.robolectric.RuntimeEnvironment.application;
+import static org.robolectric.RuntimeEnvironment.getApplication;
import static org.robolectric.Shadows.shadowOf;
import android.app.Activity;
@@ -43,7 +43,7 @@
@Test
public void testBuilder() throws Exception {
- AlertDialog.Builder builder = new AlertDialog.Builder(application);
+ AlertDialog.Builder builder = new AlertDialog.Builder(getApplication());
builder.setTitle("title").setMessage("message");
builder.setCancelable(true);
AlertDialog alert = builder.create();
@@ -62,9 +62,10 @@
@Test
public void nullTitleAndMessageAreOkay() throws Exception {
- AlertDialog.Builder builder = new AlertDialog.Builder(application) //
- .setTitle(null) //
- .setMessage(null);
+ AlertDialog.Builder builder =
+ new AlertDialog.Builder(getApplication()) //
+ .setTitle(null) //
+ .setMessage(null);
ShadowAlertDialog shadowAlertDialog = shadowOf(builder.create());
assertThat(shadowAlertDialog.getTitle().toString()).isEqualTo("");
assertThat(shadowAlertDialog.getMessage().toString()).isEqualTo("");
@@ -74,13 +75,13 @@
public void getLatestAlertDialog_shouldReturnARealAlertDialog() throws Exception {
assertThat(ShadowAlertDialog.getLatestAlertDialog()).isNull();
- AlertDialog dialog = new AlertDialog.Builder(application).show();
+ AlertDialog dialog = new AlertDialog.Builder(getApplication()).show();
assertThat(ShadowAlertDialog.getLatestAlertDialog()).isSameInstanceAs(dialog);
}
@Test
public void shouldOnlyCreateRequestedButtons() throws Exception {
- AlertDialog.Builder builder = new AlertDialog.Builder(application);
+ AlertDialog.Builder builder = new AlertDialog.Builder(getApplication());
builder.setPositiveButton("OK", null);
AlertDialog dialog = builder.create();
dialog.show();
@@ -91,7 +92,7 @@
@Test
public void shouldAllowNullButtonListeners() throws Exception {
- AlertDialog.Builder builder = new AlertDialog.Builder(application);
+ AlertDialog.Builder builder = new AlertDialog.Builder(getApplication());
builder.setPositiveButton("OK", null);
AlertDialog dialog = builder.create();
dialog.show();
@@ -100,7 +101,7 @@
@Test
public void testSetMessageAfterCreation() {
- AlertDialog.Builder builder = new AlertDialog.Builder(application);
+ AlertDialog.Builder builder = new AlertDialog.Builder(getApplication());
builder.setTitle("title").setMessage("message");
AlertDialog alert = builder.create();
@@ -116,7 +117,7 @@
@Test
public void shouldSetMessageFromResourceId() throws Exception {
- AlertDialog.Builder builder = new AlertDialog.Builder(application);
+ AlertDialog.Builder builder = new AlertDialog.Builder(getApplication());
builder.setTitle("title").setMessage(R.string.hello);
AlertDialog alert = builder.create();
@@ -126,8 +127,8 @@
@Test
public void shouldSetView() throws Exception {
- AlertDialog.Builder builder = new AlertDialog.Builder(application);
- EditText view = new EditText(application);
+ AlertDialog.Builder builder = new AlertDialog.Builder(getApplication());
+ EditText view = new EditText(getApplication());
builder.setView(view);
AlertDialog alert = builder.create();
@@ -137,7 +138,7 @@
@Test
@Config(minSdk = LOLLIPOP)
public void shouldSetView_withLayoutId() throws Exception {
- AlertDialog.Builder builder = new AlertDialog.Builder(application);
+ AlertDialog.Builder builder = new AlertDialog.Builder(getApplication());
builder.setView(R.layout.custom_layout);
AlertDialog alert = builder.create();
@@ -147,8 +148,8 @@
@Test
public void shouldSetCustomTitleView() throws Exception {
- AlertDialog.Builder builder = new AlertDialog.Builder(application);
- View view = new View(application);
+ AlertDialog.Builder builder = new AlertDialog.Builder(getApplication());
+ View view = new View(getApplication());
assertThat(builder.setCustomTitle(view)).isSameInstanceAs(builder);
AlertDialog alert = builder.create();
@@ -157,8 +158,8 @@
@Test
public void clickingPositiveButtonDismissesDialog() throws Exception {
- AlertDialog alertDialog = new AlertDialog.Builder(application)
- .setPositiveButton("Positive", null).create();
+ AlertDialog alertDialog =
+ new AlertDialog.Builder(getApplication()).setPositiveButton("Positive", null).create();
alertDialog.show();
assertTrue(alertDialog.isShowing());
@@ -168,12 +169,15 @@
@Test
public void clickingNeutralButtonDismissesDialog() throws Exception {
- AlertDialog alertDialog = new AlertDialog.Builder(application)
- .setNeutralButton("Neutral", new DialogInterface.OnClickListener() {
- @Override
- public void onClick(DialogInterface dialog, int which) {
- }
- }).create();
+ AlertDialog alertDialog =
+ new AlertDialog.Builder(getApplication())
+ .setNeutralButton(
+ "Neutral",
+ new DialogInterface.OnClickListener() {
+ @Override
+ public void onClick(DialogInterface dialog, int which) {}
+ })
+ .create();
alertDialog.show();
assertTrue(alertDialog.isShowing());
@@ -183,12 +187,15 @@
@Test
public void clickingNegativeButtonDismissesDialog() throws Exception {
- AlertDialog alertDialog = new AlertDialog.Builder(application)
- .setNegativeButton("Negative", new DialogInterface.OnClickListener() {
- @Override
- public void onClick(DialogInterface dialog, int which) {
- }
- }).create();
+ AlertDialog alertDialog =
+ new AlertDialog.Builder(getApplication())
+ .setNegativeButton(
+ "Negative",
+ new DialogInterface.OnClickListener() {
+ @Override
+ public void onClick(DialogInterface dialog, int which) {}
+ })
+ .create();
alertDialog.show();
assertTrue(alertDialog.isShowing());
@@ -224,7 +231,7 @@
list.add(77);
ArrayAdapter<Integer> adapter = new ArrayAdapter<>(context, R.layout.main, R.id.title, list);
- AlertDialog.Builder builder = new AlertDialog.Builder(application);
+ AlertDialog.Builder builder = new AlertDialog.Builder(getApplication());
builder.setSingleChoiceItems(adapter, -1, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int item) {
@@ -317,7 +324,7 @@
@Test
public void alertControllerShouldStoreCorrectIconIdFromBuilder() {
- AlertDialog.Builder builder = new AlertDialog.Builder(application);
+ AlertDialog.Builder builder = new AlertDialog.Builder(getApplication());
builder.setIcon(R.drawable.an_image);
AlertDialog alertDialog = builder.create();
diff --git a/robolectric/src/test/java/org/robolectric/shadows/ShadowApplicationTest.java b/robolectric/src/test/java/org/robolectric/shadows/ShadowApplicationTest.java
index 5ea048c..97d3761 100644
--- a/robolectric/src/test/java/org/robolectric/shadows/ShadowApplicationTest.java
+++ b/robolectric/src/test/java/org/robolectric/shadows/ShadowApplicationTest.java
@@ -865,7 +865,7 @@
pw.showAtLocation(new LinearLayout(context), Gravity.CENTER, 0, 0);
PopupWindow latestPopupWindow =
- Shadows.shadowOf(RuntimeEnvironment.application).getLatestPopupWindow();
+ Shadows.shadowOf(RuntimeEnvironment.getApplication()).getLatestPopupWindow();
assertThat(latestPopupWindow).isSameInstanceAs(pw);
}
diff --git a/robolectric/src/test/java/org/robolectric/shadows/ShadowBluetoothAdapterTest.java b/robolectric/src/test/java/org/robolectric/shadows/ShadowBluetoothAdapterTest.java
index 032a8ec..11e97c9 100644
--- a/robolectric/src/test/java/org/robolectric/shadows/ShadowBluetoothAdapterTest.java
+++ b/robolectric/src/test/java/org/robolectric/shadows/ShadowBluetoothAdapterTest.java
@@ -302,7 +302,7 @@
boolean result =
bluetoothAdapter.getProfileProxy(
- RuntimeEnvironment.application, mockServiceListener, MOCK_PROFILE1);
+ RuntimeEnvironment.getApplication(), mockServiceListener, MOCK_PROFILE1);
assertThat(result).isTrue();
verify(mockServiceListener).onServiceConnected(MOCK_PROFILE1, mockProxy);
@@ -316,7 +316,7 @@
boolean result =
bluetoothAdapter.getProfileProxy(
- RuntimeEnvironment.application, mockServiceListener, MOCK_PROFILE1);
+ RuntimeEnvironment.getApplication(), mockServiceListener, MOCK_PROFILE1);
assertThat(result).isFalse();
verifyZeroInteractions(mockServiceListener);
@@ -333,10 +333,10 @@
boolean result1 =
bluetoothAdapter.getProfileProxy(
- RuntimeEnvironment.application, mockServiceListener, MOCK_PROFILE1);
+ RuntimeEnvironment.getApplication(), mockServiceListener, MOCK_PROFILE1);
boolean result2 =
bluetoothAdapter.getProfileProxy(
- RuntimeEnvironment.application, mockServiceListener, MOCK_PROFILE2);
+ RuntimeEnvironment.getApplication(), mockServiceListener, MOCK_PROFILE2);
assertThat(result1).isTrue();
assertThat(result2).isTrue();
@@ -370,7 +370,7 @@
bluetoothAdapter.closeProfileProxy(MOCK_PROFILE1, mockProxy);
boolean result =
bluetoothAdapter.getProfileProxy(
- RuntimeEnvironment.application, mockServiceListener, MOCK_PROFILE1);
+ RuntimeEnvironment.getApplication(), mockServiceListener, MOCK_PROFILE1);
assertThat(result).isFalse();
verifyZeroInteractions(mockServiceListener);
diff --git a/robolectric/src/test/java/org/robolectric/shadows/ShadowContextWrapperTest.java b/robolectric/src/test/java/org/robolectric/shadows/ShadowContextWrapperTest.java
index edfc127..4a0e9b4 100644
--- a/robolectric/src/test/java/org/robolectric/shadows/ShadowContextWrapperTest.java
+++ b/robolectric/src/test/java/org/robolectric/shadows/ShadowContextWrapperTest.java
@@ -18,7 +18,6 @@
import android.app.Application;
import android.appwidget.AppWidgetProvider;
import android.content.BroadcastReceiver;
-import android.content.BroadcastReceiver.PendingResult;
import android.content.Context;
import android.content.ContextWrapper;
import android.content.Intent;
@@ -739,8 +738,10 @@
final Intent pick = new Intent(Intent.ACTION_PICK).addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
contextWrapper.startActivities(new Intent[] {view, pick});
- assertThat(shadowOf(RuntimeEnvironment.application).getNextStartedActivity()).isEqualTo(pick);
- assertThat(shadowOf(RuntimeEnvironment.application).getNextStartedActivity()).isEqualTo(view);
+ assertThat(shadowOf(RuntimeEnvironment.getApplication()).getNextStartedActivity())
+ .isEqualTo(pick);
+ assertThat(shadowOf(RuntimeEnvironment.getApplication()).getNextStartedActivity())
+ .isEqualTo(view);
}
@Test
@@ -749,8 +750,10 @@
final Intent pick = new Intent(Intent.ACTION_PICK).addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
contextWrapper.startActivities(new Intent[] {view, pick}, new Bundle());
- assertThat(shadowOf(RuntimeEnvironment.application).getNextStartedActivity()).isEqualTo(pick);
- assertThat(shadowOf(RuntimeEnvironment.application).getNextStartedActivity()).isEqualTo(view);
+ assertThat(shadowOf(RuntimeEnvironment.getApplication()).getNextStartedActivity())
+ .isEqualTo(pick);
+ assertThat(shadowOf(RuntimeEnvironment.getApplication()).getNextStartedActivity())
+ .isEqualTo(view);
}
@Test
@@ -760,9 +763,9 @@
contextWrapper.startActivities(new Intent[] {view, pick});
IntentForResult second =
- shadowOf(RuntimeEnvironment.application).getNextStartedActivityForResult();
+ shadowOf(RuntimeEnvironment.getApplication()).getNextStartedActivityForResult();
IntentForResult first =
- shadowOf(RuntimeEnvironment.application).getNextStartedActivityForResult();
+ shadowOf(RuntimeEnvironment.getApplication()).getNextStartedActivityForResult();
assertThat(second.intent).isEqualTo(pick);
assertThat(second.options).isNull();
@@ -780,9 +783,9 @@
contextWrapper.startActivities(new Intent[] {view, pick}, options);
IntentForResult second =
- shadowOf(RuntimeEnvironment.application).getNextStartedActivityForResult();
+ shadowOf(RuntimeEnvironment.getApplication()).getNextStartedActivityForResult();
IntentForResult first =
- shadowOf(RuntimeEnvironment.application).getNextStartedActivityForResult();
+ shadowOf(RuntimeEnvironment.getApplication()).getNextStartedActivityForResult();
assertThat(second.intent).isEqualTo(pick);
assertThat(second.options).isEqualTo(options);
diff --git a/robolectric/src/test/java/org/robolectric/shadows/ShadowEnvironmentTest.java b/robolectric/src/test/java/org/robolectric/shadows/ShadowEnvironmentTest.java
index e631fe6..e0c245b 100644
--- a/robolectric/src/test/java/org/robolectric/shadows/ShadowEnvironmentTest.java
+++ b/robolectric/src/test/java/org/robolectric/shadows/ShadowEnvironmentTest.java
@@ -178,8 +178,9 @@
assertThat(externalFilesDirs[1].getCanonicalPath()).contains("external_dir_2");
// TODO(jongerrish): This fails because ShadowContext overwrites getExternalFilesDir.
-// assertThat(RuntimeEnvironment.application.getExternalFilesDir(Environment.DIRECTORY_MOVIES)
-// .getCanonicalPath()).contains("external_dir_1");
+ //
+ // assertThat(RuntimeEnvironment.getApplication().getExternalFilesDir(Environment.DIRECTORY_MOVIES)
+ // .getCanonicalPath()).contains("external_dir_1");
}
@Test
diff --git a/robolectric/src/test/java/org/robolectric/shadows/ShadowListViewTest.java b/robolectric/src/test/java/org/robolectric/shadows/ShadowListViewTest.java
index d3ac383..61f0a92 100644
--- a/robolectric/src/test/java/org/robolectric/shadows/ShadowListViewTest.java
+++ b/robolectric/src/test/java/org/robolectric/shadows/ShadowListViewTest.java
@@ -4,7 +4,7 @@
import static java.util.Arrays.asList;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNull;
-import static org.robolectric.RuntimeEnvironment.application;
+import static org.robolectric.RuntimeEnvironment.getApplication;
import static org.robolectric.Shadows.shadowOf;
import android.app.Application;
@@ -184,7 +184,8 @@
adapterFileList.add("Item 1");
adapterFileList.add("Item 2");
adapterFileList.add("Item 3");
- final ArrayAdapter<String> adapter = new ArrayAdapter<>(application, android.R.layout.simple_list_item_1, adapterFileList);
+ final ArrayAdapter<String> adapter =
+ new ArrayAdapter<>(getApplication(), android.R.layout.simple_list_item_1, adapterFileList);
listView.setAdapter(adapter);
shadowOf(listView).populateItems();
ShadowListView shadowListView = shadowOf(listView);
diff --git a/robolectric/src/test/java/org/robolectric/shadows/ShadowNotificationTest.java b/robolectric/src/test/java/org/robolectric/shadows/ShadowNotificationTest.java
index 5c326c8..9bf279c 100644
--- a/robolectric/src/test/java/org/robolectric/shadows/ShadowNotificationTest.java
+++ b/robolectric/src/test/java/org/robolectric/shadows/ShadowNotificationTest.java
@@ -1,7 +1,7 @@
package org.robolectric.shadows;
import static com.google.common.truth.Truth.assertThat;
-import static org.robolectric.RuntimeEnvironment.application;
+import static org.robolectric.RuntimeEnvironment.getApplication;
import android.app.Notification;
import android.app.PendingIntent;
@@ -15,9 +15,9 @@
@Test
public void setLatestEventInfo__shouldCaptureContentIntent() throws Exception {
- PendingIntent pendingIntent = PendingIntent.getActivity(application, 0, new Intent(), 0);
+ PendingIntent pendingIntent = PendingIntent.getActivity(getApplication(), 0, new Intent(), 0);
Notification notification = new Notification();
- notification.setLatestEventInfo(application, "title", "content", pendingIntent);
+ notification.setLatestEventInfo(getApplication(), "title", "content", pendingIntent);
assertThat(notification.contentIntent).isSameInstanceAs(pendingIntent);
}
}
diff --git a/robolectric/src/test/java/org/robolectric/shadows/ShadowProgressBarTest.java b/robolectric/src/test/java/org/robolectric/shadows/ShadowProgressBarTest.java
index 5f15836..79048eb 100644
--- a/robolectric/src/test/java/org/robolectric/shadows/ShadowProgressBarTest.java
+++ b/robolectric/src/test/java/org/robolectric/shadows/ShadowProgressBarTest.java
@@ -4,7 +4,7 @@
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
-import static org.robolectric.RuntimeEnvironment.application;
+import static org.robolectric.RuntimeEnvironment.getApplication;
import android.util.AttributeSet;
import android.widget.ProgressBar;
@@ -28,7 +28,7 @@
.addAttribute(android.R.attr.indeterminateOnly, "false")
.build();
- progressBar = new ProgressBar(application, attrs);
+ progressBar = new ProgressBar(getApplication(), attrs);
}
@Test
diff --git a/robolectric/src/test/java/org/robolectric/shadows/ShadowRoleManagerTest.java b/robolectric/src/test/java/org/robolectric/shadows/ShadowRoleManagerTest.java
index 8f26098..d58cfb3 100644
--- a/robolectric/src/test/java/org/robolectric/shadows/ShadowRoleManagerTest.java
+++ b/robolectric/src/test/java/org/robolectric/shadows/ShadowRoleManagerTest.java
@@ -1,7 +1,7 @@
package org.robolectric.shadows;
import static com.google.common.truth.Truth.assertThat;
-import static org.robolectric.RuntimeEnvironment.application;
+import static org.robolectric.RuntimeEnvironment.getApplication;
import static org.robolectric.Shadows.shadowOf;
import android.app.role.RoleManager;
@@ -21,7 +21,7 @@
@Before
public void setUp() throws Exception {
- roleManager = (RoleManager) application.getSystemService(Context.ROLE_SERVICE);
+ roleManager = (RoleManager) getApplication().getSystemService(Context.ROLE_SERVICE);
}
@Test(expected = IllegalArgumentException.class)
diff --git a/robolectric/src/test/java/org/robolectric/shadows/ShadowServiceTest.java b/robolectric/src/test/java/org/robolectric/shadows/ShadowServiceTest.java
index 175afa6..5bb3641 100644
--- a/robolectric/src/test/java/org/robolectric/shadows/ShadowServiceTest.java
+++ b/robolectric/src/test/java/org/robolectric/shadows/ShadowServiceTest.java
@@ -62,7 +62,7 @@
@Test
public void shouldUnbindServiceWithExceptionWhenRequested() {
- shadowOf(RuntimeEnvironment.application).setUnbindServiceShouldThrowIllegalArgument(true);
+ shadowOf(RuntimeEnvironment.getApplication()).setUnbindServiceShouldThrowIllegalArgument(true);
ServiceConnection conn = Shadow.newInstanceOf(MediaScannerConnection.class);
try {
service.unbindService(conn);
diff --git a/robolectric/src/test/java/org/robolectric/shadows/ShadowSliceManagerTest.java b/robolectric/src/test/java/org/robolectric/shadows/ShadowSliceManagerTest.java
index 48161d7..a88f30a 100644
--- a/robolectric/src/test/java/org/robolectric/shadows/ShadowSliceManagerTest.java
+++ b/robolectric/src/test/java/org/robolectric/shadows/ShadowSliceManagerTest.java
@@ -34,7 +34,7 @@
@Before
public void setUp() {
- PackageManager packageManager = RuntimeEnvironment.application.getPackageManager();
+ PackageManager packageManager = RuntimeEnvironment.getApplication().getPackageManager();
ShadowApplicationPackageManager shadowPackageManager =
(ShadowApplicationPackageManager) shadowOf(packageManager);
shadowPackageManager.setPackagesForUid(PACKAGE_1_UID, new String[] {PACKAGE_NAME_1});
diff --git a/robolectric/src/test/java/org/robolectric/shadows/ShadowStorageManagerTest.java b/robolectric/src/test/java/org/robolectric/shadows/ShadowStorageManagerTest.java
index d7aae6c..8868da4 100644
--- a/robolectric/src/test/java/org/robolectric/shadows/ShadowStorageManagerTest.java
+++ b/robolectric/src/test/java/org/robolectric/shadows/ShadowStorageManagerTest.java
@@ -3,7 +3,7 @@
import static android.os.Build.VERSION_CODES.N;
import static android.os.Build.VERSION_CODES.R;
import static com.google.common.truth.Truth.assertThat;
-import static org.robolectric.RuntimeEnvironment.application;
+import static org.robolectric.RuntimeEnvironment.getApplication;
import static org.robolectric.Shadows.shadowOf;
import android.content.Context;
@@ -31,7 +31,7 @@
@Before
public void setUp() {
- storageManager = (StorageManager) application.getSystemService(Context.STORAGE_SERVICE);
+ storageManager = (StorageManager) getApplication().getSystemService(Context.STORAGE_SERVICE);
}
@Test
@@ -87,7 +87,7 @@
@Test
@Config(minSdk = N)
public void isUserKeyUnlocked() {
- shadowOf(application.getSystemService(UserManager.class)).setUserUnlocked(true);
+ shadowOf(getApplication().getSystemService(UserManager.class)).setUserUnlocked(true);
assertThat(StorageManager.isUserKeyUnlocked(0)).isTrue();
}
diff --git a/robolectric/src/test/java/org/robolectric/shadows/ShadowTelephonyManagerTest.java b/robolectric/src/test/java/org/robolectric/shadows/ShadowTelephonyManagerTest.java
index 1d1ff85..7922951 100644
--- a/robolectric/src/test/java/org/robolectric/shadows/ShadowTelephonyManagerTest.java
+++ b/robolectric/src/test/java/org/robolectric/shadows/ShadowTelephonyManagerTest.java
@@ -34,7 +34,7 @@
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.verifyZeroInteractions;
-import static org.robolectric.RuntimeEnvironment.application;
+import static org.robolectric.RuntimeEnvironment.getApplication;
import static org.robolectric.Shadows.shadowOf;
import static org.robolectric.shadows.ShadowTelephonyManager.createTelephonyDisplayInfo;
@@ -79,7 +79,7 @@
@Before
public void setUp() throws Exception {
- telephonyManager = (TelephonyManager) application.getSystemService(TELEPHONY_SERVICE);
+ telephonyManager = (TelephonyManager) getApplication().getSystemService(TELEPHONY_SERVICE);
shadowTelephonyManager = Shadow.extract(telephonyManager);
}
diff --git a/robolectric/src/test/java/org/robolectric/shadows/ShadowWifiInfoTest.java b/robolectric/src/test/java/org/robolectric/shadows/ShadowWifiInfoTest.java
index c5f9c02..460e43c 100644
--- a/robolectric/src/test/java/org/robolectric/shadows/ShadowWifiInfoTest.java
+++ b/robolectric/src/test/java/org/robolectric/shadows/ShadowWifiInfoTest.java
@@ -3,7 +3,7 @@
import static android.content.Context.WIFI_SERVICE;
import static android.os.Build.VERSION_CODES.LOLLIPOP;
import static com.google.common.truth.Truth.assertThat;
-import static org.robolectric.RuntimeEnvironment.application;
+import static org.robolectric.RuntimeEnvironment.getApplication;
import static org.robolectric.Shadows.shadowOf;
import android.net.wifi.SupplicantState;
@@ -23,7 +23,7 @@
@Before
public void setUp() {
- wifiManager = (WifiManager) application.getSystemService(WIFI_SERVICE);
+ wifiManager = (WifiManager) getApplication().getSystemService(WIFI_SERVICE);
}
@Test
diff --git a/shadows/framework/src/main/java/org/robolectric/RuntimeEnvironment.java b/shadows/framework/src/main/java/org/robolectric/RuntimeEnvironment.java
index 30823cd..73cf10e 100755
--- a/shadows/framework/src/main/java/org/robolectric/RuntimeEnvironment.java
+++ b/shadows/framework/src/main/java/org/robolectric/RuntimeEnvironment.java
@@ -9,6 +9,7 @@
import android.content.res.Configuration;
import android.content.res.Resources;
import android.util.DisplayMetrics;
+import androidx.test.platform.app.InstrumentationRegistry;
import java.nio.file.Path;
import org.robolectric.android.Bootstrap;
import org.robolectric.android.ConfigurationV25;
@@ -39,6 +40,38 @@
private static boolean useLegacyResources;
/**
+ * Get a reference to the {@link Application} under test.
+ *
+ * The Application may be created a test setup time or created lazily at call time, based on the
+ * test's {@Link LazyLoadApplication) setting. If lazy loading is enabled, this method must be
+ * called on the main/test thread.
+ *
+ * An alternate API is
+ * {@link androidx.test.core.app.ApplicationProvider#getApplicationContext()}, which is
+ * preferable if you desire cross platform tests that work on the JVM and real Android devices.
+ */
+ public static Application getApplication() {
+ if (application == null) {
+ application =
+ (Application)
+ InstrumentationRegistry.getInstrumentation()
+ .getTargetContext()
+ .getApplicationContext();
+ }
+ return application;
+ }
+
+ private static Class<? extends Application> applicationClass;
+
+ public static Class<? extends Application> getConfiguredApplicationClass() {
+ return applicationClass;
+ }
+
+ public static void setConfiguredApplicationClass(Class<? extends Application> clazz) {
+ applicationClass = clazz;
+ }
+
+ /**
* Tests if the given thread is currently set as the main thread.
*
* @param thread the thread to test.
@@ -145,8 +178,8 @@
Resources systemResources = Resources.getSystem();
systemResources.updateConfiguration(configuration, displayMetrics);
- if (application != null) {
- application.getResources().updateConfiguration(configuration, displayMetrics);
+ if (getApplication() != null) {
+ getApplication().getResources().updateConfiguration(configuration, displayMetrics);
}
}
diff --git a/shadows/framework/src/main/java/org/robolectric/android/controller/ActivityController.java b/shadows/framework/src/main/java/org/robolectric/android/controller/ActivityController.java
index de69a28..a40f0e1 100644
--- a/shadows/framework/src/main/java/org/robolectric/android/controller/ActivityController.java
+++ b/shadows/framework/src/main/java/org/robolectric/android/controller/ActivityController.java
@@ -74,7 +74,7 @@
return this;
}
// make sure the component is enabled
- Context context = RuntimeEnvironment.application.getBaseContext();
+ Context context = RuntimeEnvironment.getApplication().getBaseContext();
PackageManager packageManager = context.getPackageManager();
ComponentName componentName =
new ComponentName(context.getPackageName(), this.component.getClass().getName());
diff --git a/shadows/framework/src/main/java/org/robolectric/android/controller/BackupAgentController.java b/shadows/framework/src/main/java/org/robolectric/android/controller/BackupAgentController.java
index 5742834..68aba8e 100644
--- a/shadows/framework/src/main/java/org/robolectric/android/controller/BackupAgentController.java
+++ b/shadows/framework/src/main/java/org/robolectric/android/controller/BackupAgentController.java
@@ -19,7 +19,7 @@
if (attached) {
return this;
}
- Context baseContext = RuntimeEnvironment.application.getBaseContext();
+ Context baseContext = RuntimeEnvironment.getApplication().getBaseContext();
ReflectionHelpers.callInstanceMethod(BackupAgent.class, component, "attach",
ReflectionHelpers.ClassParameter.from(Context.class, baseContext));
return this;
diff --git a/shadows/framework/src/main/java/org/robolectric/android/controller/ComponentController.java b/shadows/framework/src/main/java/org/robolectric/android/controller/ComponentController.java
index 3241f06..0b997aa 100644
--- a/shadows/framework/src/main/java/org/robolectric/android/controller/ComponentController.java
+++ b/shadows/framework/src/main/java/org/robolectric/android/controller/ComponentController.java
@@ -39,9 +39,12 @@
public abstract C destroy();
public Intent getIntent() {
- Intent intent = this.intent == null ? new Intent(RuntimeEnvironment.application, component.getClass()) : this.intent;
+ Intent intent =
+ this.intent == null
+ ? new Intent(RuntimeEnvironment.getApplication(), component.getClass())
+ : this.intent;
if (intent.getComponent() == null) {
- intent.setClass(RuntimeEnvironment.application, component.getClass());
+ intent.setClass(RuntimeEnvironment.getApplication(), component.getClass());
}
return intent;
}
diff --git a/shadows/framework/src/main/java/org/robolectric/android/controller/ContentProviderController.java b/shadows/framework/src/main/java/org/robolectric/android/controller/ContentProviderController.java
index 62ccd1a..3643b16 100644
--- a/shadows/framework/src/main/java/org/robolectric/android/controller/ContentProviderController.java
+++ b/shadows/framework/src/main/java/org/robolectric/android/controller/ContentProviderController.java
@@ -27,7 +27,7 @@
* Create and register {@link ContentProvider} using {@link ProviderInfo} found from manifest.
*/
public ContentProviderController<T> create() {
- Context baseContext = RuntimeEnvironment.application.getBaseContext();
+ Context baseContext = RuntimeEnvironment.getApplication().getBaseContext();
ComponentName componentName = createRelative(baseContext.getPackageName(), contentProvider.getClass().getName());
@@ -68,7 +68,7 @@
!Strings.isNullOrEmpty(providerInfo.authority),
"ProviderInfo.authority must not be null or empty");
}
- Context baseContext = RuntimeEnvironment.application.getBaseContext();
+ Context baseContext = RuntimeEnvironment.getApplication().getBaseContext();
// make sure the component is enabled
ComponentName componentName =
createRelative(baseContext.getPackageName(), contentProvider.getClass().getName());
diff --git a/shadows/framework/src/main/java/org/robolectric/android/controller/IntentServiceController.java b/shadows/framework/src/main/java/org/robolectric/android/controller/IntentServiceController.java
index dccc93d..4c5911e 100644
--- a/shadows/framework/src/main/java/org/robolectric/android/controller/IntentServiceController.java
+++ b/shadows/framework/src/main/java/org/robolectric/android/controller/IntentServiceController.java
@@ -31,19 +31,22 @@
return this;
}
// make sure the component is enabled
- Context context = RuntimeEnvironment.application.getBaseContext();
+ Context context = RuntimeEnvironment.getApplication().getBaseContext();
ComponentName name =
new ComponentName(context.getPackageName(), component.getClass().getName());
context
.getPackageManager()
.setComponentEnabledSetting(name, PackageManager.COMPONENT_ENABLED_STATE_ENABLED, 0);
- ReflectionHelpers.callInstanceMethod(Service.class, component, "attach",
- from(Context.class, RuntimeEnvironment.application.getBaseContext()),
- from(ActivityThread.class, null),
- from(String.class, component.getClass().getSimpleName()),
- from(IBinder.class, null),
- from(Application.class, RuntimeEnvironment.application),
- from(Object.class, null));
+ ReflectionHelpers.callInstanceMethod(
+ Service.class,
+ component,
+ "attach",
+ from(Context.class, RuntimeEnvironment.getApplication().getBaseContext()),
+ from(ActivityThread.class, null),
+ from(String.class, component.getClass().getSimpleName()),
+ from(IBinder.class, null),
+ from(Application.class, RuntimeEnvironment.getApplication()),
+ from(Object.class, null));
attached = true;
return this;
diff --git a/shadows/framework/src/main/java/org/robolectric/android/controller/ServiceController.java b/shadows/framework/src/main/java/org/robolectric/android/controller/ServiceController.java
index da51708..1c51823 100644
--- a/shadows/framework/src/main/java/org/robolectric/android/controller/ServiceController.java
+++ b/shadows/framework/src/main/java/org/robolectric/android/controller/ServiceController.java
@@ -30,19 +30,22 @@
return this;
}
// make sure the component is enabled
- Context context = RuntimeEnvironment.application.getBaseContext();
+ Context context = RuntimeEnvironment.getApplication().getBaseContext();
ComponentName name =
new ComponentName(context.getPackageName(), component.getClass().getName());
context
.getPackageManager()
.setComponentEnabledSetting(name, PackageManager.COMPONENT_ENABLED_STATE_ENABLED, 0);
- ReflectionHelpers.callInstanceMethod(Service.class, component, "attach",
- from(Context.class, RuntimeEnvironment.application.getBaseContext()),
+ ReflectionHelpers.callInstanceMethod(
+ Service.class,
+ component,
+ "attach",
+ from(Context.class, RuntimeEnvironment.getApplication().getBaseContext()),
from(ActivityThread.class, null),
from(String.class, component.getClass().getSimpleName()),
from(IBinder.class, null),
- from(Application.class, RuntimeEnvironment.application),
+ from(Application.class, RuntimeEnvironment.getApplication()),
from(Object.class, null));
attached = true;
@@ -74,7 +77,11 @@
}
public ServiceController<T> startCommand(int flags, int startId) {
- invokeWhilePaused("onStartCommand", from(Intent.class, getIntent()), from(int.class, flags), from(int.class, startId));
+ invokeWhilePaused(
+ "onStartCommand",
+ from(Intent.class, getIntent()),
+ from(int.class, flags),
+ from(int.class, startId));
shadowMainLooper.idleIfPaused();
return this;
}
diff --git a/shadows/framework/src/main/java/org/robolectric/fakes/RoboMenu.java b/shadows/framework/src/main/java/org/robolectric/fakes/RoboMenu.java
index 893b6cf..9a755f0 100644
--- a/shadows/framework/src/main/java/org/robolectric/fakes/RoboMenu.java
+++ b/shadows/framework/src/main/java/org/robolectric/fakes/RoboMenu.java
@@ -21,7 +21,7 @@
private Context context;
public RoboMenu() {
- this(RuntimeEnvironment.application);
+ this(RuntimeEnvironment.getApplication());
}
public RoboMenu(Context context) {
diff --git a/shadows/framework/src/main/java/org/robolectric/fakes/RoboMenuItem.java b/shadows/framework/src/main/java/org/robolectric/fakes/RoboMenuItem.java
index 597d144..f94d45c 100644
--- a/shadows/framework/src/main/java/org/robolectric/fakes/RoboMenuItem.java
+++ b/shadows/framework/src/main/java/org/robolectric/fakes/RoboMenuItem.java
@@ -33,7 +33,7 @@
private Context context;
public RoboMenuItem() {
- this(RuntimeEnvironment.application);
+ this(RuntimeEnvironment.getApplication());
}
public RoboMenuItem(Context context) {
diff --git a/shadows/framework/src/main/java/org/robolectric/fakes/RoboSubMenu.java b/shadows/framework/src/main/java/org/robolectric/fakes/RoboSubMenu.java
index 2a5d6c7..462d2b0 100644
--- a/shadows/framework/src/main/java/org/robolectric/fakes/RoboSubMenu.java
+++ b/shadows/framework/src/main/java/org/robolectric/fakes/RoboSubMenu.java
@@ -13,7 +13,7 @@
public class RoboSubMenu extends RoboMenu implements SubMenu {
public RoboSubMenu() {
- this(RuntimeEnvironment.application);
+ this(RuntimeEnvironment.getApplication());
}
public RoboSubMenu(Context context) {
diff --git a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowAccessibilityNodeInfo.java b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowAccessibilityNodeInfo.java
index 6f53462..9811ef4 100644
--- a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowAccessibilityNodeInfo.java
+++ b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowAccessibilityNodeInfo.java
@@ -243,7 +243,7 @@
@Implementation
protected static AccessibilityNodeInfo obtain() {
- return obtain(new View(RuntimeEnvironment.application.getApplicationContext()));
+ return obtain(new View(RuntimeEnvironment.getApplication().getApplicationContext()));
}
@Implementation
diff --git a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowActivity.java b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowActivity.java
index 208ebdf..ce7b1c2 100644
--- a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowActivity.java
+++ b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowActivity.java
@@ -101,7 +101,7 @@
Intent intent,
@Nullable @WithType("android.app.Activity$NonConfigurationInstances")
Object lastNonConfigurationInstances) {
- Application application = RuntimeEnvironment.application;
+ Application application = RuntimeEnvironment.getApplication();
Context baseContext = application.getBaseContext();
ComponentName componentName =
diff --git a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowActivityManager.java b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowActivityManager.java
index 31589f1..fd6e17e 100644
--- a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowActivityManager.java
+++ b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowActivityManager.java
@@ -55,8 +55,8 @@
public ShadowActivityManager() {
ActivityManager.RunningAppProcessInfo processInfo = new ActivityManager.RunningAppProcessInfo();
fillInProcessInfo(processInfo);
- processInfo.processName = RuntimeEnvironment.application.getPackageName();
- processInfo.pkgList = new String[] {RuntimeEnvironment.application.getPackageName()};
+ processInfo.processName = RuntimeEnvironment.getApplication().getPackageName();
+ processInfo.pkgList = new String[] {RuntimeEnvironment.getApplication().getPackageName()};
processes.add(processInfo);
}
@@ -138,7 +138,7 @@
@Implementation(minSdk = JELLY_BEAN_MR1)
protected boolean switchUser(int userid) {
ShadowUserManager shadowUserManager =
- Shadow.extract(RuntimeEnvironment.application.getSystemService(Context.USER_SERVICE));
+ Shadow.extract(RuntimeEnvironment.getApplication().getSystemService(Context.USER_SERVICE));
shadowUserManager.switchUser(userid);
return true;
}
@@ -303,7 +303,7 @@
protected boolean clearApplicationUserData(String packageName, IPackageDataObserver observer) {
// The real ActivityManager calls clearApplicationUserData on the ActivityManagerService that
// calls PackageManager#clearApplicationUserData.
- RuntimeEnvironment.application
+ RuntimeEnvironment.getApplication()
.getPackageManager()
.clearApplicationUserData(packageName, observer);
return true;
@@ -314,9 +314,9 @@
* ActivityManager#clearApplicationUserData()}.
*/
public boolean isApplicationUserDataCleared() {
- PackageManager packageManager = RuntimeEnvironment.application.getPackageManager();
+ PackageManager packageManager = RuntimeEnvironment.getApplication().getPackageManager();
return Shadow.<ShadowApplicationPackageManager>extract(packageManager)
.getClearedApplicationUserDataPackages()
- .contains(RuntimeEnvironment.application.getPackageName());
+ .contains(RuntimeEnvironment.getApplication().getPackageName());
}
}
diff --git a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowActivityThread.java b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowActivityThread.java
index b727133..2b5f5b4 100644
--- a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowActivityThread.java
+++ b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowActivityThread.java
@@ -48,7 +48,7 @@
}
try {
- return RuntimeEnvironment.application
+ return RuntimeEnvironment.getApplication()
.getPackageManager()
.getApplicationInfo(packageName, flags);
} catch (PackageManager.NameNotFoundException e) {
diff --git a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowAlertController.java b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowAlertController.java
index 93d0b67..53abb63 100644
--- a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowAlertController.java
+++ b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowAlertController.java
@@ -64,7 +64,7 @@
@Implementation(minSdk = LOLLIPOP)
public void setView(int resourceId) {
- setView(LayoutInflater.from(RuntimeEnvironment.application).inflate(resourceId, null));
+ setView(LayoutInflater.from(RuntimeEnvironment.getApplication()).inflate(resourceId, null));
}
@Implementation
@@ -82,6 +82,7 @@
}
public Adapter getAdapter() {
- return ReflectionHelpers.<ListView>callInstanceMethod(realAlertController, "getListView").getAdapter();
+ return ReflectionHelpers.<ListView>callInstanceMethod(realAlertController, "getListView")
+ .getAdapter();
}
}
diff --git a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowAlertDialog.java b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowAlertDialog.java
index deace5b..e9f9511 100644
--- a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowAlertDialog.java
+++ b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowAlertDialog.java
@@ -29,7 +29,7 @@
* @return the most recently created {@code AlertDialog}, or null if none has been created during this test run
*/
public static AlertDialog getLatestAlertDialog() {
- ShadowApplication shadowApplication = Shadow.extract(RuntimeEnvironment.application);
+ ShadowApplication shadowApplication = Shadow.extract(RuntimeEnvironment.getApplication());
ShadowAlertDialog dialog = shadowApplication.getLatestAlertDialog();
return dialog == null ? null : dialog.realAlertDialog;
}
@@ -45,7 +45,7 @@
* Resets the tracking of the most recently created {@code AlertDialog}
*/
public static void reset() {
- ShadowApplication shadowApplication = Shadow.extract(RuntimeEnvironment.application);
+ ShadowApplication shadowApplication = Shadow.extract(RuntimeEnvironment.getApplication());
shadowApplication.setLatestAlertDialog(null);
}
@@ -91,7 +91,7 @@
@Override
public void show() {
super.show();
- ShadowApplication shadowApplication = Shadow.extract(RuntimeEnvironment.application);
+ ShadowApplication shadowApplication = Shadow.extract(RuntimeEnvironment.getApplication());
shadowApplication.setLatestAlertDialog(this);
}
diff --git a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowAppWidgetManager.java b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowAppWidgetManager.java
index 1982e0d..dc99f35 100644
--- a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowAppWidgetManager.java
+++ b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowAppWidgetManager.java
@@ -203,7 +203,7 @@
}
private View createWidgetView(int widgetLayoutId) {
- return LayoutInflater.from(RuntimeEnvironment.application).inflate(widgetLayoutId, null);
+ return LayoutInflater.from(RuntimeEnvironment.getApplication()).inflate(widgetLayoutId, null);
}
/**
diff --git a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowApplicationPackageManager.java b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowApplicationPackageManager.java
index 77266df..cdc0b58 100644
--- a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowApplicationPackageManager.java
+++ b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowApplicationPackageManager.java
@@ -762,7 +762,7 @@
// the manifest XML. The parser populates the requestedPermissionsFlags, but doesn't grant
// the permissions. Several tests rely on the test package being granted all permissions, so
// we treat this as a special case.
- || pkgName.equals(RuntimeEnvironment.application.getPackageName());
+ || pkgName.equals(RuntimeEnvironment.getApplication().getPackageName());
}
@Implementation
diff --git a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowBackupManager.java b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowBackupManager.java
index 94138e2..45567fa 100644
--- a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowBackupManager.java
+++ b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowBackupManager.java
@@ -117,8 +117,8 @@
}
private void enforceBackupPermission(String message) {
- RuntimeEnvironment.application.enforceCallingOrSelfPermission(
- android.Manifest.permission.BACKUP, message);
+ RuntimeEnvironment.getApplication()
+ .enforceCallingOrSelfPermission(android.Manifest.permission.BACKUP, message);
}
private static class FakeRestoreSession implements IRestoreSession {
diff --git a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowBiometricManager.java b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowBiometricManager.java
index 5abd78e..0100814 100644
--- a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowBiometricManager.java
+++ b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowBiometricManager.java
@@ -43,7 +43,7 @@
BiometricManager.class,
"hasBiometrics",
ClassParameter.from(
- Context.class, RuntimeEnvironment.application.getApplicationContext()));
+ Context.class, RuntimeEnvironment.getApplication().getApplicationContext()));
if (!hasBiomatrics) {
return BIOMETRIC_ERROR_NO_HARDWARE;
} else {
diff --git a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowBitmapFactory.java b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowBitmapFactory.java
index 1707766..fa66307 100644
--- a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowBitmapFactory.java
+++ b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowBitmapFactory.java
@@ -264,7 +264,8 @@
public static void provideWidthAndHeightHints(int resourceId, int width, int height) {
widthAndHeightMap.put(
- "resource:" + RuntimeEnvironment.application.getResources().getResourceName(resourceId),
+ "resource:"
+ + RuntimeEnvironment.getApplication().getResources().getResourceName(resourceId),
new Point(width, height));
}
diff --git a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowBluetoothAdapter.java b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowBluetoothAdapter.java
index 29a25ca..60905fa 100644
--- a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowBluetoothAdapter.java
+++ b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowBluetoothAdapter.java
@@ -174,7 +174,7 @@
* isBleScanAlwaysAvailable(); }
*/
private static boolean isAirplaneMode() {
- Context context = RuntimeEnvironment.application;
+ Context context = RuntimeEnvironment.getApplication();
return Settings.Global.getInt(context.getContentResolver(), Settings.Global.AIRPLANE_MODE_ON, 0)
!= 0;
}
diff --git a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowBluetoothGatt.java b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowBluetoothGatt.java
index 1020f38..4fa8ecd 100644
--- a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowBluetoothGatt.java
+++ b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowBluetoothGatt.java
@@ -55,13 +55,13 @@
new Class<?>[] {
Context.class, iBluetoothGattClass, BluetoothDevice.class, Integer.TYPE
},
- new Object[] {RuntimeEnvironment.application, null, device, 0});
+ new Object[] {RuntimeEnvironment.getApplication(), null, device, 0});
} else {
bluetoothGatt =
Shadow.newInstance(
BluetoothGatt.class,
new Class<?>[] {Context.class, iBluetoothGattClass, BluetoothDevice.class},
- new Object[] {RuntimeEnvironment.application, null, device});
+ new Object[] {RuntimeEnvironment.getApplication(), null, device});
}
return bluetoothGatt;
} catch (ClassNotFoundException e) {
diff --git a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowBluetoothHeadset.java b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowBluetoothHeadset.java
index 2ec619b..e36fe0e 100644
--- a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowBluetoothHeadset.java
+++ b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowBluetoothHeadset.java
@@ -133,6 +133,6 @@
.putExtra(BluetoothProfile.EXTRA_STATE, bluetoothProfileExtraState)
.putExtra(BluetoothDevice.EXTRA_DEVICE, bluetoothDevice);
- RuntimeEnvironment.application.sendBroadcast(connectedIntent);
+ RuntimeEnvironment.getApplication().sendBroadcast(connectedIntent);
}
}
diff --git a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowContentResolver.java b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowContentResolver.java
index ec92687..e1b5209 100644
--- a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowContentResolver.java
+++ b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowContentResolver.java
@@ -1,3 +1,4 @@
+
package org.robolectric.shadows;
import static android.content.ContentResolver.QUERY_ARG_SQL_SELECTION;
diff --git a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowDebug.java b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowDebug.java
index 729868f..b2f520e 100644
--- a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowDebug.java
+++ b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowDebug.java
@@ -96,7 +96,7 @@
String defaultTraceExtension = ".trace";
if (tracePath == null || tracePath.charAt(0) != '/') {
- final File dir = RuntimeEnvironment.application.getExternalFilesDir(null);
+ final File dir = RuntimeEnvironment.getApplication().getExternalFilesDir(null);
if (tracePath == null) {
tracePath = new File(dir, defaultTraceBody).getAbsolutePath();
} else {
diff --git a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowDisplay.java b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowDisplay.java
index 699f299..3fce4ae 100644
--- a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowDisplay.java
+++ b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowDisplay.java
@@ -37,7 +37,8 @@
*/
public static Display getDefaultDisplay() {
WindowManager windowManager =
- (WindowManager) RuntimeEnvironment.application.getSystemService(Context.WINDOW_SERVICE);
+ (WindowManager)
+ RuntimeEnvironment.getApplication().getSystemService(Context.WINDOW_SERVICE);
return windowManager.getDefaultDisplay();
}
diff --git a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowInstrumentation.java b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowInstrumentation.java
index d78d061..28581cc 100644
--- a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowInstrumentation.java
+++ b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowInstrumentation.java
@@ -161,7 +161,7 @@
private void verifyActivityInManifest(Intent intent) {
if (checkActivities
- && RuntimeEnvironment.application
+ && RuntimeEnvironment.getApplication()
.getPackageManager()
.resolveActivity(intent, MATCH_DEFAULT_ONLY)
== null) {
@@ -347,7 +347,7 @@
private static boolean hasRequiredPermissionForBroadcast(
Context context, @Nullable String requiredPermission) {
return requiredPermission == null
- || RuntimeEnvironment.application
+ || RuntimeEnvironment.getApplication()
.getPackageManager()
.checkPermission(requiredPermission, context.getPackageName())
== PERMISSION_GRANTED;
diff --git a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowLegacyAssetManager.java b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowLegacyAssetManager.java
index b56264a..d3d0739 100644
--- a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowLegacyAssetManager.java
+++ b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowLegacyAssetManager.java
@@ -506,7 +506,8 @@
}
return ResName.qualifyFromFilePath("android", fileName.replaceFirst("jar:", ""));
} else {
- return ResName.qualifyFromFilePath(RuntimeEnvironment.application.getPackageName(), fileName);
+ return ResName.qualifyFromFilePath(
+ RuntimeEnvironment.getApplication().getPackageName(), fileName);
}
}
@@ -1229,7 +1230,7 @@
String defaultPackageName =
ResourceIds.isFrameworkResource(resId)
? "android"
- : RuntimeEnvironment.application.getPackageName();
+ : RuntimeEnvironment.getApplication().getPackageName();
ResName resName =
ResName.qualifyResName(
attributeSet.getAttributeName(i), defaultPackageName, "attr");
diff --git a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowListPopupWindow.java b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowListPopupWindow.java
index ae129e0..1d5dd6b 100644
--- a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowListPopupWindow.java
+++ b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowListPopupWindow.java
@@ -17,13 +17,13 @@
@Implementation
protected void show() {
- ShadowApplication shadowApplication = Shadow.extract(RuntimeEnvironment.application);
+ ShadowApplication shadowApplication = Shadow.extract(RuntimeEnvironment.getApplication());
shadowApplication.setLatestListPopupWindow(realListPopupWindow);
directlyOn(realListPopupWindow, ListPopupWindow.class).show();
}
public static ListPopupWindow getLatestListPopupWindow() {
- ShadowApplication shadowApplication = Shadow.extract(RuntimeEnvironment.application);
+ ShadowApplication shadowApplication = Shadow.extract(RuntimeEnvironment.getApplication());
return shadowApplication.getLatestListPopupWindow();
}
}
diff --git a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowNfcAdapter.java b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowNfcAdapter.java
index 2c2a82a..2dc7e4b 100644
--- a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowNfcAdapter.java
+++ b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowNfcAdapter.java
@@ -58,7 +58,7 @@
@Implementation(minSdk = Build.VERSION_CODES.KITKAT)
protected void enableReaderMode(
Activity activity, NfcAdapter.ReaderCallback callback, int flags, Bundle extras) {
- if (!RuntimeEnvironment.application
+ if (!RuntimeEnvironment.getApplication()
.getPackageManager()
.hasSystemFeature(PackageManager.FEATURE_NFC)) {
throw new UnsupportedOperationException();
@@ -71,7 +71,7 @@
@Implementation(minSdk = Build.VERSION_CODES.KITKAT)
protected void disableReaderMode(Activity activity) {
- if (!RuntimeEnvironment.application
+ if (!RuntimeEnvironment.getApplication()
.getPackageManager()
.hasSystemFeature(PackageManager.FEATURE_NFC)) {
throw new UnsupportedOperationException();
diff --git a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowNotification.java b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowNotification.java
index f2e63d1..164f5bd 100644
--- a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowNotification.java
+++ b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowNotification.java
@@ -80,7 +80,8 @@
if (RuntimeEnvironment.getApiLevel() >= Build.VERSION_CODES.N) {
return realNotification.extras.getParcelable(Notification.EXTRA_PICTURE);
} else {
- ImageView imageView = (ImageView) applyBigContentView().findViewById(getInternalResourceId("big_picture"));
+ ImageView imageView =
+ (ImageView) applyBigContentView().findViewById(getInternalResourceId("big_picture"));
return imageView != null && imageView.getDrawable() != null
? ((BitmapDrawable) imageView.getDrawable()).getBitmap() : null;
}
@@ -122,11 +123,13 @@
}
private View applyContentView() {
- return realNotification.contentView.apply(RuntimeEnvironment.application, new FrameLayout(RuntimeEnvironment.application));
+ return realNotification.contentView.apply(
+ RuntimeEnvironment.getApplication(), new FrameLayout(RuntimeEnvironment.getApplication()));
}
private View applyBigContentView() {
- return realNotification.bigContentView.apply(RuntimeEnvironment.application, new FrameLayout(RuntimeEnvironment.application));
+ return realNotification.bigContentView.apply(
+ RuntimeEnvironment.getApplication(), new FrameLayout(RuntimeEnvironment.getApplication()));
}
private CharSequence findText(View view, String resourceName) {
@@ -140,7 +143,8 @@
ByteArrayOutputStream buf = new ByteArrayOutputStream();
ShadowView shadowView = Shadow.extract(view);
shadowView.dump(new PrintStream(buf), 4);
- throw new IllegalArgumentException("no id." + resourceName + " found in view:\n" + buf.toString());
+ throw new IllegalArgumentException(
+ "no id." + resourceName + " found in view:\n" + buf.toString());
}
return subView;
}
diff --git a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowNotificationManager.java b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowNotificationManager.java
index b61a7f7..3045eae 100644
--- a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowNotificationManager.java
+++ b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowNotificationManager.java
@@ -98,7 +98,7 @@
for (Map.Entry<Key, PostedNotification> entry : notifsCopy.entrySet()) {
statusBarNotifications[i++] =
new StatusBarNotification(
- RuntimeEnvironment.application.getPackageName(),
+ RuntimeEnvironment.getApplication().getPackageName(),
null /* opPkg */,
entry.getKey().id,
entry.getKey().tag,
@@ -327,7 +327,7 @@
protected boolean canNotifyAsPackage(@NonNull String pkg) {
// TODO: This doesn't work correctly with notification delegates because
// ShadowNotificationManager doesn't respect the associated context, it just uses the global
- // RuntimeEnvironment.application context.
+ // RuntimeEnvironment.getApplication() context.
// So for the sake of testing, we will compare with values set using
// setCanNotifyAsPackage()
diff --git a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowPackageInstaller.java b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowPackageInstaller.java
index 03d6323..7ac5795 100644
--- a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowPackageInstaller.java
+++ b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowPackageInstaller.java
@@ -151,8 +151,8 @@
ShadowSession shadowSession = Shadow.extract(session);
if (success) {
try {
- shadowSession.statusReceiver
- .sendIntent(RuntimeEnvironment.application, 0, null, null, null, null);
+ shadowSession.statusReceiver.sendIntent(
+ RuntimeEnvironment.getApplication(), 0, null, null, null, null);
} catch (SendIntentException e) {
throw new RuntimeException(e);
}
diff --git a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowPackageManager.java b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowPackageManager.java
index 1af5393..61590d3 100644
--- a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowPackageManager.java
+++ b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowPackageManager.java
@@ -1115,7 +1115,8 @@
synchronized (lock) {
boolean hasDeletePackagesPermission = false;
String[] requestedPermissions =
- packageInfos.get(RuntimeEnvironment.application.getPackageName()).requestedPermissions;
+ packageInfos.get(RuntimeEnvironment.getApplication().getPackageName())
+ .requestedPermissions;
if (requestedPermissions != null) {
for (String permission : requestedPermissions) {
if (Manifest.permission.DELETE_PACKAGES.equals(permission)) {
diff --git a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowPendingIntent.java b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowPendingIntent.java
index 0bf239f..e765aca 100644
--- a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowPendingIntent.java
+++ b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowPendingIntent.java
@@ -318,7 +318,7 @@
@Implementation(minSdk = JELLY_BEAN_MR1)
protected String getCreatorPackage() {
return (creatorPackage == null)
- ? RuntimeEnvironment.application.getPackageName()
+ ? RuntimeEnvironment.getApplication().getPackageName()
: creatorPackage;
}
diff --git a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowPopupMenu.java b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowPopupMenu.java
index 4c57271..9349a71 100644
--- a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowPopupMenu.java
+++ b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowPopupMenu.java
@@ -42,13 +42,13 @@
}
public static PopupMenu getLatestPopupMenu() {
- ShadowApplication shadowApplication = Shadow.extract(RuntimeEnvironment.application);
+ ShadowApplication shadowApplication = Shadow.extract(RuntimeEnvironment.getApplication());
ShadowPopupMenu popupMenu = shadowApplication.getLatestPopupMenu();
return popupMenu == null ? null : popupMenu.realPopupMenu;
}
public static void setLatestPopupMenu(ShadowPopupMenu latestPopupMenu) {
- ShadowApplication shadowApplication = Shadow.extract(RuntimeEnvironment.application);
+ ShadowApplication shadowApplication = Shadow.extract(RuntimeEnvironment.getApplication());
if (shadowApplication != null) shadowApplication.setLatestPopupMenu(latestPopupMenu);
}
diff --git a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowPowerManager.java b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowPowerManager.java
index b1dae76..3e3d894 100644
--- a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowPowerManager.java
+++ b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowPowerManager.java
@@ -204,7 +204,7 @@
* @return Most recent wake lock.
*/
public static PowerManager.WakeLock getLatestWakeLock() {
- ShadowApplication shadowApplication = Shadow.extract(RuntimeEnvironment.application);
+ ShadowApplication shadowApplication = Shadow.extract(RuntimeEnvironment.getApplication());
return shadowApplication.getLatestWakeLock();
}
diff --git a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowService.java b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowService.java
index 46e27b4..84ba070 100644
--- a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowService.java
+++ b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowService.java
@@ -58,7 +58,9 @@
lastForegroundNotification = notification;
lastForegroundNotificationAttached = true;
notification.flags |= Notification.FLAG_FOREGROUND_SERVICE;
- NotificationManager nm = (NotificationManager)RuntimeEnvironment.application.getSystemService(Context.NOTIFICATION_SERVICE);
+ NotificationManager nm =
+ (NotificationManager)
+ RuntimeEnvironment.getApplication().getSystemService(Context.NOTIFICATION_SERVICE);
nm.notify(id, notification);
}
@@ -79,7 +81,9 @@
}
private void removeForegroundNotification() {
- NotificationManager nm = (NotificationManager)RuntimeEnvironment.application.getSystemService(Context.NOTIFICATION_SERVICE);
+ NotificationManager nm =
+ (NotificationManager)
+ RuntimeEnvironment.getApplication().getSystemService(Context.NOTIFICATION_SERVICE);
nm.cancel(lastForegroundNotificationId);
lastForegroundNotification = null;
lastForegroundNotificationAttached = false;
diff --git a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowSettings.java b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowSettings.java
index f27731e..731f8a8 100644
--- a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowSettings.java
+++ b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowSettings.java
@@ -515,11 +515,11 @@
*/
public static void setAirplaneMode(boolean isAirplaneMode) {
Settings.Global.putInt(
- RuntimeEnvironment.application.getContentResolver(),
+ RuntimeEnvironment.getApplication().getContentResolver(),
Settings.Global.AIRPLANE_MODE_ON,
isAirplaneMode ? 1 : 0);
Settings.System.putInt(
- RuntimeEnvironment.application.getContentResolver(),
+ RuntimeEnvironment.getApplication().getContentResolver(),
Settings.System.AIRPLANE_MODE_ON,
isAirplaneMode ? 1 : 0);
}
@@ -531,9 +531,13 @@
*/
public static void setWifiOn(boolean isOn) {
Settings.Global.putInt(
- RuntimeEnvironment.application.getContentResolver(), Settings.Global.WIFI_ON, isOn ? 1 : 0);
+ RuntimeEnvironment.getApplication().getContentResolver(),
+ Settings.Global.WIFI_ON,
+ isOn ? 1 : 0);
Settings.System.putInt(
- RuntimeEnvironment.application.getContentResolver(), Settings.System.WIFI_ON, isOn ? 1 : 0);
+ RuntimeEnvironment.getApplication().getContentResolver(),
+ Settings.System.WIFI_ON,
+ isOn ? 1 : 0);
}
/**
@@ -543,7 +547,7 @@
*/
public static void set24HourTimeFormat(boolean use24HourTimeFormat) {
Settings.System.putString(
- RuntimeEnvironment.application.getContentResolver(),
+ RuntimeEnvironment.getApplication().getContentResolver(),
Settings.System.TIME_12_24,
use24HourTimeFormat ? "24" : "12");
}
@@ -571,13 +575,13 @@
// This setting moved from Secure to Global in JELLY_BEAN_MR1
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) {
Settings.Global.putInt(
- RuntimeEnvironment.application.getContentResolver(),
+ RuntimeEnvironment.getApplication().getContentResolver(),
Settings.Global.ADB_ENABLED,
adbEnabled ? 1 : 0);
}
// Support all clients by always setting the Secure version of the setting
Settings.Secure.putInt(
- RuntimeEnvironment.application.getContentResolver(),
+ RuntimeEnvironment.getApplication().getContentResolver(),
Settings.Secure.ADB_ENABLED,
adbEnabled ? 1 : 0);
}
@@ -594,13 +598,13 @@
// JELLY_BEAN_MR1.
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) {
Settings.Global.putInt(
- RuntimeEnvironment.application.getContentResolver(),
+ RuntimeEnvironment.getApplication().getContentResolver(),
Settings.Global.INSTALL_NON_MARKET_APPS,
installNonMarketApps ? 1 : 0);
}
// Always set the Secure version of the setting
Settings.Secure.putInt(
- RuntimeEnvironment.application.getContentResolver(),
+ RuntimeEnvironment.getApplication().getContentResolver(),
Settings.Secure.INSTALL_NON_MARKET_APPS,
installNonMarketApps ? 1 : 0);
}
diff --git a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowShortcutManager.java b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowShortcutManager.java
index 3ec2a6a..33379f5 100644
--- a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowShortcutManager.java
+++ b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowShortcutManager.java
@@ -201,7 +201,7 @@
}
if (resultIntent != null) {
try {
- resultIntent.sendIntent(RuntimeEnvironment.application, 0, null, null, null);
+ resultIntent.sendIntent(RuntimeEnvironment.getApplication(), 0, null, null, null);
} catch (SendIntentException e) {
throw new IllegalStateException();
}
diff --git a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowStorageManager.java b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowStorageManager.java
index 3962607..04dd8cf 100644
--- a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowStorageManager.java
+++ b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowStorageManager.java
@@ -2,7 +2,6 @@
import static android.os.Build.VERSION_CODES.M;
import static android.os.Build.VERSION_CODES.N;
-import static org.robolectric.RuntimeEnvironment.application;
import android.os.UserManager;
import android.os.storage.StorageManager;
@@ -11,6 +10,7 @@
import java.io.File;
import java.util.ArrayList;
import java.util.List;
+import org.robolectric.RuntimeEnvironment;
import org.robolectric.annotation.HiddenApi;
import org.robolectric.annotation.Implementation;
import org.robolectric.annotation.Implements;
@@ -100,7 +100,8 @@
@HiddenApi
@Implementation(minSdk = N)
protected static boolean isUserKeyUnlocked(int userId) {
- ShadowUserManager extract = Shadow.extract(application.getSystemService(UserManager.class));
+ ShadowUserManager extract =
+ Shadow.extract(RuntimeEnvironment.getApplication().getSystemService(UserManager.class));
return extract.isUserUnlocked();
}
}
diff --git a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowToast.java b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowToast.java
index f560eb9..af095b4 100644
--- a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowToast.java
+++ b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowToast.java
@@ -43,13 +43,13 @@
@Implementation
protected void show() {
- ShadowApplication shadowApplication = Shadow.extract(RuntimeEnvironment.application);
+ ShadowApplication shadowApplication = Shadow.extract(RuntimeEnvironment.getApplication());
shadowApplication.getShownToasts().add(toast);
}
@Implementation
protected void setText(int resId) {
- this.text = RuntimeEnvironment.application.getString(resId);
+ this.text = RuntimeEnvironment.getApplication().getString(resId);
}
@Implementation
@@ -129,7 +129,7 @@
* </pre>
*/
public static void reset() {
- ShadowApplication shadowApplication = Shadow.extract(RuntimeEnvironment.application);
+ ShadowApplication shadowApplication = Shadow.extract(RuntimeEnvironment.getApplication());
shadowApplication.getShownToasts().clear();
}
@@ -141,7 +141,7 @@
* or since {@link #reset()} has been called.
*/
public static int shownToastCount() {
- ShadowApplication shadowApplication = Shadow.extract(RuntimeEnvironment.application);
+ ShadowApplication shadowApplication = Shadow.extract(RuntimeEnvironment.getApplication());
return shadowApplication.getShownToasts().size();
}
@@ -154,7 +154,7 @@
* @return whether the {@code Toast} was requested
*/
public static boolean showedCustomToast(CharSequence message, int layoutResourceIdToCheckForMessage) {
- ShadowApplication shadowApplication = Shadow.extract(RuntimeEnvironment.application);
+ ShadowApplication shadowApplication = Shadow.extract(RuntimeEnvironment.getApplication());
for (Toast toast : shadowApplication.getShownToasts()) {
String text = ((TextView) toast.getView().findViewById(layoutResourceIdToCheckForMessage)).getText().toString();
if (text.equals(message.toString())) {
@@ -171,7 +171,7 @@
* @return whether the {@code Toast} was requested
*/
public static boolean showedToast(CharSequence message) {
- ShadowApplication shadowApplication = Shadow.extract(RuntimeEnvironment.application);
+ ShadowApplication shadowApplication = Shadow.extract(RuntimeEnvironment.getApplication());
for (Toast toast : shadowApplication.getShownToasts()) {
ShadowToast shadowToast = Shadow.extract(toast);
String text = shadowToast.text;
@@ -188,7 +188,7 @@
* @return the text of the most recently shown {@code Toast}
*/
public static String getTextOfLatestToast() {
- ShadowApplication shadowApplication = Shadow.extract(RuntimeEnvironment.application);
+ ShadowApplication shadowApplication = Shadow.extract(RuntimeEnvironment.getApplication());
List<Toast> shownToasts = shadowApplication.getShownToasts();
if (shownToasts.isEmpty()) {
return null;
@@ -205,7 +205,7 @@
* @return the most recently shown {@code Toast}
*/
public static Toast getLatestToast() {
- ShadowApplication shadowApplication = Shadow.extract(RuntimeEnvironment.application);
+ ShadowApplication shadowApplication = Shadow.extract(RuntimeEnvironment.getApplication());
List<Toast> shownToasts = shadowApplication.getShownToasts();
return (shownToasts.size() == 0) ? null : shownToasts.get(shownToasts.size() - 1);
}
diff --git a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowUsageStatsManager.java b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowUsageStatsManager.java
index 63ec827..1a56290 100644
--- a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowUsageStatsManager.java
+++ b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowUsageStatsManager.java
@@ -335,7 +335,7 @@
@Implementation(minSdk = Build.VERSION_CODES.P)
protected UsageEvents queryEventsForSelf(long beginTime, long endTime) {
- String packageName = RuntimeEnvironment.application.getOpPackageName();
+ String packageName = RuntimeEnvironment.getApplication().getOpPackageName();
ImmutableList.Builder<Event> listBuilder = new ImmutableList.Builder<>();
for (Event event : eventsByTimeStamp.subMap(beginTime, endTime).values()) {
if (packageName.equals(event.getPackageName())) {
@@ -499,7 +499,7 @@
.putExtra(UsageStatsManager.EXTRA_TIME_LIMIT, timeLimitInMillis)
.putExtra(UsageStatsManager.EXTRA_TIME_USED, timeUsedInMillis);
try {
- observer.callbackIntent.send(RuntimeEnvironment.application, 0, intent);
+ observer.callbackIntent.send(RuntimeEnvironment.getApplication(), 0, intent);
} catch (CanceledException e) {
throw new RuntimeException(e);
}
@@ -550,7 +550,7 @@
.putExtra(UsageStatsManager.EXTRA_TIME_LIMIT, sessionStepTimeInMillis)
.putExtra(UsageStatsManager.EXTRA_TIME_USED, timeUsedInMillis);
try {
- observer.sessionStepTriggeredIntent.send(RuntimeEnvironment.application, 0, intent);
+ observer.sessionStepTriggeredIntent.send(RuntimeEnvironment.getApplication(), 0, intent);
} catch (CanceledException e) {
throw new RuntimeException(e);
}
@@ -565,7 +565,7 @@
UsageSessionObserver observer = usageSessionObserversById.get(observerId);
Intent intent = new Intent().putExtra(UsageStatsManager.EXTRA_OBSERVER_ID, observerId);
try {
- observer.sessionEndedIntent.send(RuntimeEnvironment.application, 0, intent);
+ observer.sessionEndedIntent.send(RuntimeEnvironment.getApplication(), 0, intent);
} catch (CanceledException e) {
throw new RuntimeException(e);
}
@@ -621,7 +621,7 @@
.putExtra(UsageStatsManager.EXTRA_TIME_LIMIT, observer.timeLimit.toMillis())
.putExtra(UsageStatsManager.EXTRA_TIME_USED, timeUsed.toMillis());
try {
- observer.callbackIntent.send(RuntimeEnvironment.application, 0, intent);
+ observer.callbackIntent.send(RuntimeEnvironment.getApplication(), 0, intent);
} catch (CanceledException e) {
throw new RuntimeException(e);
}
diff --git a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowUsbManager.java b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowUsbManager.java
index dd9a91d..77b5752 100644
--- a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowUsbManager.java
+++ b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowUsbManager.java
@@ -3,7 +3,6 @@
import static android.os.Build.VERSION_CODES.M;
import static android.os.Build.VERSION_CODES.N;
import static android.os.Build.VERSION_CODES.N_MR1;
-import static org.robolectric.RuntimeEnvironment.application;
import static org.robolectric.util.ReflectionHelpers.ClassParameter.from;
import static org.robolectric.util.ReflectionHelpers.callConstructor;
import static org.robolectric.util.ReflectionHelpers.getStaticField;
@@ -60,7 +59,7 @@
/** Returns true if the caller has permission to access the device. */
@Implementation
protected boolean hasPermission(UsbDevice device) {
- return hasPermissionForPackage(device, RuntimeEnvironment.application.getPackageName());
+ return hasPermissionForPackage(device, RuntimeEnvironment.getApplication().getPackageName());
}
/** Returns true if the given package has permission to access the device. */
@@ -72,7 +71,7 @@
@Implementation(minSdk = N)
@HiddenApi
protected void grantPermission(UsbDevice device) {
- grantPermission(device, RuntimeEnvironment.application.getPackageName());
+ grantPermission(device, RuntimeEnvironment.getApplication().getPackageName());
}
@Implementation(minSdk = N_MR1)
@@ -134,7 +133,7 @@
if (hasPermission) {
grantPermission(usbDevice);
} else {
- revokePermission(usbDevice, RuntimeEnvironment.application.getPackageName());
+ revokePermission(usbDevice, RuntimeEnvironment.getApplication().getPackageName());
}
}
@@ -142,7 +141,7 @@
public void removeUsbDevice(UsbDevice usbDevice) {
Preconditions.checkNotNull(usbDevice);
usbDevices.remove(usbDevice.getDeviceName());
- revokePermission(usbDevice, RuntimeEnvironment.application.getPackageName());
+ revokePermission(usbDevice, RuntimeEnvironment.getApplication().getPackageName());
}
@Implementation(minSdk = M)
@@ -238,7 +237,8 @@
(int) powerRole,
(int) dataRole,
status.getSupportedRoleCombinations()));
- application.sendBroadcast(new Intent(UsbManager.ACTION_USB_PORT_CHANGED));
+ RuntimeEnvironment.getApplication()
+ .sendBroadcast(new Intent(UsbManager.ACTION_USB_PORT_CHANGED));
}
/** Opens a file descriptor from a temporary file. */
diff --git a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowWallpaperManager.java b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowWallpaperManager.java
index 0408269..2724a6d 100644
--- a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowWallpaperManager.java
+++ b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowWallpaperManager.java
@@ -162,7 +162,7 @@
Intent wallpaperServiceIntent = new Intent().setComponent(wallpaperService);
List<ResolveInfo> resolveInfoList =
- RuntimeEnvironment.application
+ RuntimeEnvironment.getApplication()
.getPackageManager()
.queryIntentServices(wallpaperServiceIntent, PackageManager.GET_META_DATA);
if (resolveInfoList.size() != 1) {
@@ -170,7 +170,7 @@
"Can't locate the given wallpaper service: " + wallpaperService);
}
- wallpaperInfo = new WallpaperInfo(RuntimeEnvironment.application, resolveInfoList.get(0));
+ wallpaperInfo = new WallpaperInfo(RuntimeEnvironment.getApplication(), resolveInfoList.get(0));
lockScreenImage = null;
homeScreenImage = null;
return true;
@@ -197,7 +197,7 @@
private static void enforceWallpaperComponentPermission() {
// Robolectric doesn't stimulate IPC calls. When this code is executed, it will still be running
// in the caller process.
- if (RuntimeEnvironment.application.checkSelfPermission(permission.SET_WALLPAPER_COMPONENT)
+ if (RuntimeEnvironment.getApplication().checkSelfPermission(permission.SET_WALLPAPER_COMPONENT)
!= PackageManager.PERMISSION_GRANTED) {
throw new SecurityException(
"Permission " + permission.SET_WALLPAPER_COMPONENT + " isn't granted.");
@@ -210,7 +210,7 @@
*/
private static ParcelFileDescriptor createParcelFileDescriptorFromBitmap(
Bitmap image, String fileName) {
- File tmpFile = new File(RuntimeEnvironment.application.getCacheDir(), fileName);
+ File tmpFile = new File(RuntimeEnvironment.getApplication().getCacheDir(), fileName);
try (FileOutputStream fileOutputStream = new FileOutputStream(tmpFile)) {
image.compress(CompressFormat.PNG, /* quality= */ 0, fileOutputStream);
return ParcelFileDescriptor.open(tmpFile, ParcelFileDescriptor.MODE_READ_ONLY);
diff --git a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowWifiManager.java b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowWifiManager.java
index b11bbe5..84dd111 100644
--- a/shadows/framework/src/main/java/org/robolectric/shadows/ShadowWifiManager.java
+++ b/shadows/framework/src/main/java/org/robolectric/shadows/ShadowWifiManager.java
@@ -266,7 +266,7 @@
true /* isConnected */);
ShadowConnectivityManager connectivityManager =
Shadow.extract(
- RuntimeEnvironment.application.getSystemService(Context.CONNECTIVITY_SERVICE));
+ RuntimeEnvironment.getApplication().getSystemService(Context.CONNECTIVITY_SERVICE));
connectivityManager.setActiveNetworkInfo(networkInfo);
if (listener != null) {
diff --git a/shadows/httpclient/src/test/java/org/robolectric/shadows/httpclient/AndroidHttpClientTest.java b/shadows/httpclient/src/test/java/org/robolectric/shadows/httpclient/AndroidHttpClientTest.java
index e86ece4..e5ef907 100644
--- a/shadows/httpclient/src/test/java/org/robolectric/shadows/httpclient/AndroidHttpClientTest.java
+++ b/shadows/httpclient/src/test/java/org/robolectric/shadows/httpclient/AndroidHttpClientTest.java
@@ -26,7 +26,8 @@
@Test
public void testNewInstanceWithContext() throws Exception {
- AndroidHttpClient client = AndroidHttpClient.newInstance("foo", RuntimeEnvironment.application);
+ AndroidHttpClient client =
+ AndroidHttpClient.newInstance("foo", RuntimeEnvironment.getApplication());
assertThat(client).isNotNull();
}
diff --git a/shadows/playservices/src/main/java/org/robolectric/shadows/gms/ShadowGooglePlayServicesUtil.java b/shadows/playservices/src/main/java/org/robolectric/shadows/gms/ShadowGooglePlayServicesUtil.java
index 46ffcad..e2f9dcd 100644
--- a/shadows/playservices/src/main/java/org/robolectric/shadows/gms/ShadowGooglePlayServicesUtil.java
+++ b/shadows/playservices/src/main/java/org/robolectric/shadows/gms/ShadowGooglePlayServicesUtil.java
@@ -121,7 +121,7 @@
if (errorCode == ConnectionResult.SUCCESS) {
return null;
}
- return new Dialog(RuntimeEnvironment.application);
+ return new Dialog(RuntimeEnvironment.getApplication());
}
public PendingIntent getErrorPendingIntent(int errorCode, Context context,
@@ -138,11 +138,11 @@
}
public Context getRemoteContext(Context context) {
- return RuntimeEnvironment.application;
+ return RuntimeEnvironment.getApplication();
}
public Resources getRemoteResource(Context context) {
- return RuntimeEnvironment.application.getResources();
+ return RuntimeEnvironment.getApplication().getResources();
}
public int isGooglePlayServicesAvailable(Context context) {
@@ -165,4 +165,4 @@
public void showErrorNotification(int errorCode, Context context) {}
}
-}
\ No newline at end of file
+}
diff --git a/shadows/playservices/src/test/java/org/robolectric/shadows/gms/ShadowGoogleAuthUtilTest.java b/shadows/playservices/src/test/java/org/robolectric/shadows/gms/ShadowGoogleAuthUtilTest.java
index 62a15af..de442ff 100644
--- a/shadows/playservices/src/test/java/org/robolectric/shadows/gms/ShadowGoogleAuthUtilTest.java
+++ b/shadows/playservices/src/test/java/org/robolectric/shadows/gms/ShadowGoogleAuthUtilTest.java
@@ -62,59 +62,77 @@
@Test
public void canRedirectStaticMethodToImplementation() throws Exception {
ShadowGoogleAuthUtil.provideImpl(mockGoogleAuthUtil);
- GoogleAuthUtil.clearToken(RuntimeEnvironment.application, "token");
- verify(mockGoogleAuthUtil, times(1)).clearToken(RuntimeEnvironment.application, "token");
+ GoogleAuthUtil.clearToken(RuntimeEnvironment.getApplication(), "token");
+ verify(mockGoogleAuthUtil, times(1)).clearToken(RuntimeEnvironment.getApplication(), "token");
}
@Test
public void getAccountChangeEvents_defaultReturnEmptyList() throws Exception {
- List<AccountChangeEvent> list = GoogleAuthUtil.getAccountChangeEvents(
- RuntimeEnvironment.application, 0, "name");
+ List<AccountChangeEvent> list =
+ GoogleAuthUtil.getAccountChangeEvents(RuntimeEnvironment.getApplication(), 0, "name");
assertNotNull(list);
assertEquals(0, list.size());
}
@Test
public void getAccountId_defaultNotNull() throws Exception {
- assertNotNull(GoogleAuthUtil.getAccountId(RuntimeEnvironment.application, "name"));
+ assertNotNull(GoogleAuthUtil.getAccountId(RuntimeEnvironment.getApplication(), "name"));
}
@Test
public void getToken_defaultNotNull() throws Exception {
- assertNotNull(GoogleAuthUtil.getToken(RuntimeEnvironment.application, "name", "scope"));
- assertNotNull(GoogleAuthUtil.getToken(RuntimeEnvironment.application, "name", "scope",
- null));
- assertNotNull(GoogleAuthUtil.getToken(RuntimeEnvironment.application, new Account("name",
- "robo"), "scope"));
- assertNotNull(GoogleAuthUtil.getToken(RuntimeEnvironment.application, new Account("name",
- "robo"), "scope", null));
- assertNotNull(GoogleAuthUtil.getTokenWithNotification(RuntimeEnvironment.application,
- "name", "scope", null));
- assertNotNull(GoogleAuthUtil.getTokenWithNotification(RuntimeEnvironment.application,
- "name", "scope", null, new Intent()));
- assertNotNull(GoogleAuthUtil.getTokenWithNotification(RuntimeEnvironment.application,
- "name", "scope", null, "authority", null));
- assertNotNull(GoogleAuthUtil.getTokenWithNotification(RuntimeEnvironment.application,
- new Account("name", "robo"), "scope", null));
- assertNotNull(GoogleAuthUtil.getTokenWithNotification(RuntimeEnvironment.application,
- new Account("name", "robo"), "scope", null, new Intent()));
- assertNotNull(GoogleAuthUtil.getTokenWithNotification(RuntimeEnvironment.application,
- new Account("name", "robo"), "scope", null, "authority", null));
+ assertNotNull(GoogleAuthUtil.getToken(RuntimeEnvironment.getApplication(), "name", "scope"));
+ assertNotNull(
+ GoogleAuthUtil.getToken(RuntimeEnvironment.getApplication(), "name", "scope", null));
+ assertNotNull(
+ GoogleAuthUtil.getToken(
+ RuntimeEnvironment.getApplication(), new Account("name", "robo"), "scope"));
+ assertNotNull(
+ GoogleAuthUtil.getToken(
+ RuntimeEnvironment.getApplication(), new Account("name", "robo"), "scope", null));
+ assertNotNull(
+ GoogleAuthUtil.getTokenWithNotification(
+ RuntimeEnvironment.getApplication(), "name", "scope", null));
+ assertNotNull(
+ GoogleAuthUtil.getTokenWithNotification(
+ RuntimeEnvironment.getApplication(), "name", "scope", null, new Intent()));
+ assertNotNull(
+ GoogleAuthUtil.getTokenWithNotification(
+ RuntimeEnvironment.getApplication(), "name", "scope", null, "authority", null));
+ assertNotNull(
+ GoogleAuthUtil.getTokenWithNotification(
+ RuntimeEnvironment.getApplication(), new Account("name", "robo"), "scope", null));
+ assertNotNull(
+ GoogleAuthUtil.getTokenWithNotification(
+ RuntimeEnvironment.getApplication(),
+ new Account("name", "robo"),
+ "scope",
+ null,
+ new Intent()));
+ assertNotNull(
+ GoogleAuthUtil.getTokenWithNotification(
+ RuntimeEnvironment.getApplication(),
+ new Account("name", "robo"),
+ "scope",
+ null,
+ "authority",
+ null));
}
@Test
public void getTokenWithNotification_nullCallBackThrowIllegalArgumentException()
throws Exception {
thrown.expect(IllegalArgumentException.class);
- GoogleAuthUtil.getTokenWithNotification(RuntimeEnvironment.application, "name", "scope",
- null, null);
+ GoogleAuthUtil.getTokenWithNotification(
+ RuntimeEnvironment.getApplication(), "name", "scope", null, null);
}
@Test
public void getTokenWithNotification_nullAuthorityThrowIllegalArgumentException()
throws Exception {
thrown.expect(IllegalArgumentException.class);
- assertNotNull(GoogleAuthUtil.getTokenWithNotification(RuntimeEnvironment.application,
- "name", "scope", null, null, null));
+ assertNotNull(
+ GoogleAuthUtil.getTokenWithNotification(
+ RuntimeEnvironment.getApplication(), "name", "scope", null, null, null));
}
}
diff --git a/shadows/playservices/src/test/java/org/robolectric/shadows/gms/ShadowGooglePlayServicesUtilTest.java b/shadows/playservices/src/test/java/org/robolectric/shadows/gms/ShadowGooglePlayServicesUtilTest.java
index a6e8c82..cd75b96 100644
--- a/shadows/playservices/src/test/java/org/robolectric/shadows/gms/ShadowGooglePlayServicesUtilTest.java
+++ b/shadows/playservices/src/test/java/org/robolectric/shadows/gms/ShadowGooglePlayServicesUtilTest.java
@@ -62,8 +62,9 @@
ShadowGooglePlayServicesUtil.provideImpl(mockGooglePlayServicesUtil);
when(mockGooglePlayServicesUtil.isGooglePlayServicesAvailable(
any(Context.class))).thenReturn(ConnectionResult.INTERNAL_ERROR);
- assertEquals(ConnectionResult.INTERNAL_ERROR,
- GooglePlayServicesUtil.isGooglePlayServicesAvailable(RuntimeEnvironment.application));
+ assertEquals(
+ ConnectionResult.INTERNAL_ERROR,
+ GooglePlayServicesUtil.isGooglePlayServicesAvailable(RuntimeEnvironment.getApplication()));
}
@Test
@@ -75,12 +76,12 @@
@Test
public void getRemoteContext_defaultNotNull() {
- assertNotNull(GooglePlayServicesUtil.getRemoteContext(RuntimeEnvironment.application));
+ assertNotNull(GooglePlayServicesUtil.getRemoteContext(RuntimeEnvironment.getApplication()));
}
@Test
public void getRemoteResource_defaultNotNull() {
- assertNotNull(GooglePlayServicesUtil.getRemoteResource(RuntimeEnvironment.application));
+ assertNotNull(GooglePlayServicesUtil.getRemoteResource(RuntimeEnvironment.getApplication()));
}
@Test
@@ -97,21 +98,25 @@
@Test
public void getErrorPendingIntent() {
- assertNotNull(GooglePlayServicesUtil.getErrorPendingIntent(
- ConnectionResult.SERVICE_MISSING, RuntimeEnvironment.application, 0));
- assertNull(GooglePlayServicesUtil.getErrorPendingIntent(
- ConnectionResult.SUCCESS, RuntimeEnvironment.application, 0));
+ assertNotNull(
+ GooglePlayServicesUtil.getErrorPendingIntent(
+ ConnectionResult.SERVICE_MISSING, RuntimeEnvironment.getApplication(), 0));
+ assertNull(
+ GooglePlayServicesUtil.getErrorPendingIntent(
+ ConnectionResult.SUCCESS, RuntimeEnvironment.getApplication(), 0));
}
@Test
public void getOpenSourceSoftwareLicenseInfo_defaultNotNull() {
- assertNotNull(GooglePlayServicesUtil.getOpenSourceSoftwareLicenseInfo(
- RuntimeEnvironment.application));
+ assertNotNull(
+ GooglePlayServicesUtil.getOpenSourceSoftwareLicenseInfo(
+ RuntimeEnvironment.getApplication()));
}
@Test
public void isGooglePlayServicesAvailable_defaultServiceMissing() {
- assertEquals(ConnectionResult.SERVICE_MISSING,
- GooglePlayServicesUtil.isGooglePlayServicesAvailable(RuntimeEnvironment.application));
+ assertEquals(
+ ConnectionResult.SERVICE_MISSING,
+ GooglePlayServicesUtil.isGooglePlayServicesAvailable(RuntimeEnvironment.getApplication()));
}
}
diff --git a/shadows/playservices/src/test/java/org/robolectric/shadows/gms/common/ShadowGoogleApiAvailabilityTest.java b/shadows/playservices/src/test/java/org/robolectric/shadows/gms/common/ShadowGoogleApiAvailabilityTest.java
index d99ed27..7e12ec7 100644
--- a/shadows/playservices/src/test/java/org/robolectric/shadows/gms/common/ShadowGoogleApiAvailabilityTest.java
+++ b/shadows/playservices/src/test/java/org/robolectric/shadows/gms/common/ShadowGoogleApiAvailabilityTest.java
@@ -29,7 +29,7 @@
@Before
public void setUp() {
- roboContext = RuntimeEnvironment.application;
+ roboContext = RuntimeEnvironment.getApplication();
}
@After
diff --git a/shadows/supportv4/src/main/java/org/robolectric/shadows/support/v4/ShadowLocalBroadcastManager.java b/shadows/supportv4/src/main/java/org/robolectric/shadows/support/v4/ShadowLocalBroadcastManager.java
index e735eca..9f95b65 100644
--- a/shadows/supportv4/src/main/java/org/robolectric/shadows/support/v4/ShadowLocalBroadcastManager.java
+++ b/shadows/supportv4/src/main/java/org/robolectric/shadows/support/v4/ShadowLocalBroadcastManager.java
@@ -73,7 +73,7 @@
new Runnable() {
@Override
public void run() {
- receiver.onReceive(RuntimeEnvironment.application, broadcastIntent);
+ receiver.onReceive(RuntimeEnvironment.getApplication(), broadcastIntent);
}
});
}
diff --git a/shadows/supportv4/src/test/java/org/robolectric/shadows/support/v4/CursorLoaderTest.java b/shadows/supportv4/src/test/java/org/robolectric/shadows/support/v4/CursorLoaderTest.java
index 1d3ad10..f040c2d 100644
--- a/shadows/supportv4/src/test/java/org/robolectric/shadows/support/v4/CursorLoaderTest.java
+++ b/shadows/supportv4/src/test/java/org/robolectric/shadows/support/v4/CursorLoaderTest.java
@@ -18,12 +18,14 @@
String selection = "_id = ?";
String[] selectionArgs = new String[] { "5" };
String sortOrder = "_id";
- CursorLoader cursorLoader = new CursorLoader(RuntimeEnvironment.application,
- uri,
- projection,
- selection,
- selectionArgs,
- sortOrder);
+ CursorLoader cursorLoader =
+ new CursorLoader(
+ RuntimeEnvironment.getApplication(),
+ uri,
+ projection,
+ selection,
+ selectionArgs,
+ sortOrder);
assertThat(cursorLoader.getUri()).isEqualTo(uri);
assertThat(cursorLoader.getProjection()).isEqualTo(projection);
@@ -39,7 +41,7 @@
String selection = "_id = ?";
String[] selectionArgs = new String[] { "5" };
String sortOrder = "_id";
- CursorLoader cursorLoader = new CursorLoader(RuntimeEnvironment.application);
+ CursorLoader cursorLoader = new CursorLoader(RuntimeEnvironment.getApplication());
cursorLoader.setUri(uri);
cursorLoader.setProjection(projection);
cursorLoader.setSelection(selection);
diff --git a/shadows/supportv4/src/test/java/org/robolectric/shadows/support/v4/NotificationCompatBuilderTest.java b/shadows/supportv4/src/test/java/org/robolectric/shadows/support/v4/NotificationCompatBuilderTest.java
index c26d028..8d29ff7 100644
--- a/shadows/supportv4/src/test/java/org/robolectric/shadows/support/v4/NotificationCompatBuilderTest.java
+++ b/shadows/supportv4/src/test/java/org/robolectric/shadows/support/v4/NotificationCompatBuilderTest.java
@@ -17,7 +17,7 @@
NotificationCompat.Action action =
new NotificationCompat.Action.Builder(R.drawable.ic_corp_icon, "a title", null).build();
Notification notification =
- new NotificationCompat.Builder(RuntimeEnvironment.application)
+ new NotificationCompat.Builder(RuntimeEnvironment.getApplication())
.addAction(action)
.build();
assertThat(notification.actions).asList().hasSize(1);
diff --git a/shadows/supportv4/src/test/java/org/robolectric/shadows/support/v4/ShadowLegacyAsyncTaskLoaderTest.java b/shadows/supportv4/src/test/java/org/robolectric/shadows/support/v4/ShadowLegacyAsyncTaskLoaderTest.java
index 7302b49..3a6f795 100644
--- a/shadows/supportv4/src/test/java/org/robolectric/shadows/support/v4/ShadowLegacyAsyncTaskLoaderTest.java
+++ b/shadows/supportv4/src/test/java/org/robolectric/shadows/support/v4/ShadowLegacyAsyncTaskLoaderTest.java
@@ -68,7 +68,7 @@
private Integer data;
public TestLoader(Integer data) {
- super(RuntimeEnvironment.application);
+ super(RuntimeEnvironment.getApplication());
this.data = data;
}
diff --git a/shadows/supportv4/src/test/java/org/robolectric/shadows/support/v4/ShadowLoaderTest.java b/shadows/supportv4/src/test/java/org/robolectric/shadows/support/v4/ShadowLoaderTest.java
index 126f770..7fdf779 100644
--- a/shadows/supportv4/src/test/java/org/robolectric/shadows/support/v4/ShadowLoaderTest.java
+++ b/shadows/supportv4/src/test/java/org/robolectric/shadows/support/v4/ShadowLoaderTest.java
@@ -17,12 +17,13 @@
@Before
public void create() {
- loader = new Loader<String>(RuntimeEnvironment.application) {
- @Override
- protected void onForceLoad() {
- onForceLoadCalled = true;
- }
- };
+ loader =
+ new Loader<String>(RuntimeEnvironment.getApplication()) {
+ @Override
+ protected void onForceLoad() {
+ onForceLoadCalled = true;
+ }
+ };
onForceLoadCalled = false;
}
diff --git a/shadows/supportv4/src/test/java/org/robolectric/shadows/support/v4/ShadowLocalBroadcastManagerTest.java b/shadows/supportv4/src/test/java/org/robolectric/shadows/support/v4/ShadowLocalBroadcastManagerTest.java
index c15f65b..d9deba9 100644
--- a/shadows/supportv4/src/test/java/org/robolectric/shadows/support/v4/ShadowLocalBroadcastManagerTest.java
+++ b/shadows/supportv4/src/test/java/org/robolectric/shadows/support/v4/ShadowLocalBroadcastManagerTest.java
@@ -28,14 +28,16 @@
@Test
public void shouldGetInstance() throws Exception {
- LocalBroadcastManager instance = LocalBroadcastManager.getInstance(RuntimeEnvironment.application);
+ LocalBroadcastManager instance =
+ LocalBroadcastManager.getInstance(RuntimeEnvironment.getApplication());
assertNotNull(instance);
- assertSame(instance, LocalBroadcastManager.getInstance(RuntimeEnvironment.application));
+ assertSame(instance, LocalBroadcastManager.getInstance(RuntimeEnvironment.getApplication()));
}
@Test
public void shouldSendBroadcasts() throws Exception {
- LocalBroadcastManager instance = LocalBroadcastManager.getInstance(RuntimeEnvironment.application);
+ LocalBroadcastManager instance =
+ LocalBroadcastManager.getInstance(RuntimeEnvironment.getApplication());
final boolean[] called = new boolean[1];
final BroadcastReceiver receiver = new BroadcastReceiver() {
@Override
@@ -55,7 +57,8 @@
@Test
public void shouldSendBroadcastsWithDataScheme() throws Exception {
- LocalBroadcastManager instance = LocalBroadcastManager.getInstance(RuntimeEnvironment.application);
+ LocalBroadcastManager instance =
+ LocalBroadcastManager.getInstance(RuntimeEnvironment.getApplication());
final boolean[] called = new boolean[1];
final BroadcastReceiver receiver = new BroadcastReceiver() {
@Override
@@ -77,7 +80,8 @@
@Test
public void shouldUnregisterReceiver() throws Exception {
- LocalBroadcastManager instance = LocalBroadcastManager.getInstance(RuntimeEnvironment.application);
+ LocalBroadcastManager instance =
+ LocalBroadcastManager.getInstance(RuntimeEnvironment.getApplication());
final boolean[] called = new boolean[1];
final BroadcastReceiver receiver = new BroadcastReceiver() {
@Override
@@ -94,7 +98,8 @@
@Test
public void testGetBroadcastIntents() throws Exception {
- LocalBroadcastManager broadcastManager = LocalBroadcastManager.getInstance(RuntimeEnvironment.application);
+ LocalBroadcastManager broadcastManager =
+ LocalBroadcastManager.getInstance(RuntimeEnvironment.getApplication());
broadcastManager.registerReceiver(new BroadcastReceiver() {
@Override public void onReceive(Context context, Intent intent) {
transcript.add("got intent " + intent.getAction());
@@ -113,7 +118,8 @@
@Test
public void testGetRegisteredBroadcastReceivers() throws Exception {
- LocalBroadcastManager broadcastManager = LocalBroadcastManager.getInstance(RuntimeEnvironment.application);
+ LocalBroadcastManager broadcastManager =
+ LocalBroadcastManager.getInstance(RuntimeEnvironment.getApplication());
ShadowLocalBroadcastManager shadowLocalBroadcastManager = shadowBroadcast(broadcastManager);
assertEquals(0, shadowLocalBroadcastManager.getRegisteredBroadcastReceivers().size());
@@ -136,7 +142,8 @@
@Test
public void testGetSentBroadcastIntents() throws Exception {
- LocalBroadcastManager broadcastManager = LocalBroadcastManager.getInstance(RuntimeEnvironment.application);
+ LocalBroadcastManager broadcastManager =
+ LocalBroadcastManager.getInstance(RuntimeEnvironment.getApplication());
ShadowLocalBroadcastManager shadowLocalBroadcastManager = shadowBroadcast(broadcastManager);
assertEquals(0, shadowLocalBroadcastManager.getSentBroadcastIntents().size());
diff --git a/shadows/supportv4/src/test/java/org/robolectric/shadows/support/v4/ShadowMediaBrowserCompatTest.java b/shadows/supportv4/src/test/java/org/robolectric/shadows/support/v4/ShadowMediaBrowserCompatTest.java
index 57d7f12..7a9a9a6 100644
--- a/shadows/supportv4/src/test/java/org/robolectric/shadows/support/v4/ShadowMediaBrowserCompatTest.java
+++ b/shadows/supportv4/src/test/java/org/robolectric/shadows/support/v4/ShadowMediaBrowserCompatTest.java
@@ -25,7 +25,7 @@
@RunWith(AndroidJUnit4.class)
public class ShadowMediaBrowserCompatTest {
- private Context context = RuntimeEnvironment.application;
+ private Context context = RuntimeEnvironment.getApplication();
private MediaBrowserCompat mediaBrowser;
private ShadowMediaBrowserCompat shadow;
diff --git a/shadows/supportv4/src/test/java/org/robolectric/shadows/support/v4/ShadowPausedAsyncTaskLoaderTest.java b/shadows/supportv4/src/test/java/org/robolectric/shadows/support/v4/ShadowPausedAsyncTaskLoaderTest.java
index 8e3c362..888cad9 100644
--- a/shadows/supportv4/src/test/java/org/robolectric/shadows/support/v4/ShadowPausedAsyncTaskLoaderTest.java
+++ b/shadows/supportv4/src/test/java/org/robolectric/shadows/support/v4/ShadowPausedAsyncTaskLoaderTest.java
@@ -73,7 +73,7 @@
private Integer data;
public TestLoader(Integer data) {
- super(RuntimeEnvironment.application);
+ super(RuntimeEnvironment.getApplication());
this.data = data;
}
diff --git a/shadows/supportv4/src/test/java/org/robolectric/shadows/support/v4/ShadowSwipeRefreshLayoutTest.java b/shadows/supportv4/src/test/java/org/robolectric/shadows/support/v4/ShadowSwipeRefreshLayoutTest.java
index f666528..8cd324e 100644
--- a/shadows/supportv4/src/test/java/org/robolectric/shadows/support/v4/ShadowSwipeRefreshLayoutTest.java
+++ b/shadows/supportv4/src/test/java/org/robolectric/shadows/support/v4/ShadowSwipeRefreshLayoutTest.java
@@ -18,7 +18,7 @@
public void getOnRefreshListener_shouldReturnTheListener() {
final OnRefreshListener listener = mock(OnRefreshListener.class);
- final SwipeRefreshLayout layout = new SwipeRefreshLayout(RuntimeEnvironment.application);
+ final SwipeRefreshLayout layout = new SwipeRefreshLayout(RuntimeEnvironment.getApplication());
layout.setOnRefreshListener(listener);
assertThat(shadowOf(layout).getOnRefreshListener()).isSameInstanceAs(listener);
diff --git a/shadows/supportv4/src/test/java/org/robolectric/shadows/support/v4/ShadowViewPagerTest.java b/shadows/supportv4/src/test/java/org/robolectric/shadows/support/v4/ShadowViewPagerTest.java
index c56bf63..2dfaeb5 100644
--- a/shadows/supportv4/src/test/java/org/robolectric/shadows/support/v4/ShadowViewPagerTest.java
+++ b/shadows/supportv4/src/test/java/org/robolectric/shadows/support/v4/ShadowViewPagerTest.java
@@ -23,7 +23,7 @@
@Before
public void setUp() throws Exception {
- pager = new ViewPager(RuntimeEnvironment.application);
+ pager = new ViewPager(RuntimeEnvironment.getApplication());
adapter = new TestPagerAdapter();
}