Robolectric.java revision f43bd55afd9cc5f265e7c58227d0d9d49770c40b
1345fb6b77303f0d3c98cf748fefa0136183bdc79Christian Williamspackage com.xtremelabs.robolectric;
20b378afcde0200166e546c46a7642015accfce49Christian Williams & Ian Fisher
347fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.app.Activity;
447fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.app.ActivityGroup;
547fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.app.ActivityManager;
647fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.app.AlarmManager;
747fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.app.AlertDialog;
847fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.app.Application;
947fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.app.Dialog;
1047fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.app.KeyguardManager;
1147fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.app.ListActivity;
1247fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.app.Notification;
1347fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.app.NotificationManager;
1447fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.app.PendingIntent;
1547fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.app.ProgressDialog;
1647fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.app.Service;
171fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williamsimport android.appwidget.AppWidgetManager;
18b01474a3329222965d31068f5c33e59c6e6aa6a4Josh Lauer & Christian Williamsimport android.bluetooth.BluetoothAdapter;
19b01474a3329222965d31068f5c33e59c6e6aa6a4Josh Lauer & Christian Williamsimport android.bluetooth.BluetoothDevice;
2047fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.content.ContentResolver;
2147fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.content.ContentValues;
2247fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.content.Context;
2347fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.content.ContextWrapper;
2447fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.content.Intent;
25509ae1952861e52c35161e0102c545eb4d45242eDiego Garciaimport android.content.UriMatcher;
269e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowhamimport android.content.pm.ResolveInfo;
2770a3ec81f0bda52d8388facf562a80e2d16ac96fGonçalo Silvaimport android.content.res.AssetManager;
28cf37f66c9bcbf0b25b879fbb78c9442c9101c7acRich Humphreyimport android.content.res.Configuration;
291fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williamsimport android.content.res.Resources;
3047fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.database.sqlite.SQLiteCursor;
3147fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.database.sqlite.SQLiteDatabase;
3247fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.database.sqlite.SQLiteOpenHelper;
3347fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.database.sqlite.SQLiteProgram;
3447fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.database.sqlite.SQLiteQueryBuilder;
3547fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.database.sqlite.SQLiteStatement;
3647fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.graphics.Bitmap;
3747fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.graphics.Canvas;
3847fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.graphics.ColorMatrix;
3947fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.graphics.Matrix;
4047fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.graphics.Paint;
4147fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.graphics.Path;
4247fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.graphics.Rect;
4347fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.graphics.drawable.BitmapDrawable;
4447fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.graphics.drawable.ColorDrawable;
4547fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.graphics.drawable.Drawable;
4647fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.graphics.drawable.LayerDrawable;
4747fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.graphics.drawable.ShapeDrawable;
4847fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.graphics.drawable.StateListDrawable;
4931af8607e2c7da6ba8708f57c4b67b6b4aaad921Michael Portuesiimport android.hardware.Camera;
505aab2036d99aa0bdced8c12a41a2b67a0bc8d676Daveimport android.hardware.SensorManager;
5106abdc35948a13a609c6e6c972d6fa19603b7fe9Joe Moore & Ryan Richardimport android.location.Geocoder;
521fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williamsimport android.location.LocationManager;
5336a56b1b82e6409c81ccc87ab7148cef105b4517Michael Portuesiimport android.media.AudioManager;
545480630a30500f34f6e03ed218d80f5ad843ed87Rich Humphreyimport android.media.MediaPlayer;
5531af8607e2c7da6ba8708f57c4b67b6b4aaad921Michael Portuesiimport android.media.MediaRecorder;
567581f8ab1d3fb2950ae13fc09a9b1862d1ec3af1Macarseimport android.net.ConnectivityManager;
577581f8ab1d3fb2950ae13fc09a9b1862d1ec3af1Macarseimport android.net.NetworkInfo;
587cce13cdd16925bcc5ec4af389eaedd682db6275Tim Labeeuw & Tyler Schultzimport android.net.wifi.ScanResult;
59011d50de8590a67a76d440ecfae2d8d2a114bcffTim Labeeuw & Tyler Schultzimport android.net.wifi.WifiConfiguration;
606c15208cbe99e92bec0a70b5ca479314ea45fc3eTyler Schultzimport android.net.wifi.WifiInfo;
61523401082f8da71727f102003baf023e6c356386adriancowhamimport android.net.wifi.WifiManager;
6247fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.os.Bundle;
6347fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.os.CountDownTimer;
6447fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.os.Handler;
6547fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.os.HandlerThread;
6647fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.os.Looper;
6747fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.os.Parcel;
6847fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.os.PowerManager;
6947fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.os.ResultReceiver;
7047fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.preference.DialogPreference;
7147fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.preference.ListPreference;
7247fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.preference.Preference;
7347fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.preference.PreferenceActivity;
7447fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.preference.PreferenceCategory;
7547fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.preference.PreferenceGroup;
7647fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.preference.PreferenceScreen;
773efec46bd0d61f590dbffe5c91cb2580b98628feDaveimport android.telephony.SmsManager;
78c59af8991708feeca9cdfb028101113a79ef73f4Glenn Jahnke & Lenny Turetskyimport android.telephony.TelephonyManager;
79034305f3b3bcd3c0e44a6f7fb1cdcf1a9363a0c1Tyler Schultzimport android.text.ClipboardManager;
808bdd4405f79972e8c153562e96afa912f3fe81c8Graeme Duncanimport android.text.format.DateFormat;
819e562ba543ceec13e2553e043c24b15ff6d999ebPhil Goodwin & Tyler Schultzimport android.text.method.PasswordTransformationMethod;
8247fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.view.Display;
8347fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.view.LayoutInflater;
8447fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.view.MenuInflater;
8547fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.view.MotionEvent;
8647fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.view.View;
8747fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.view.ViewConfiguration;
8847fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.view.ViewGroup;
893f78da998ce73c1c7c25798a7e7e4f19287eff23Michael Portuesiimport android.view.animation.Animation;
9086b7c8791d1e5bff8403ec7fe6b8bdf7b5e05bf9Zoodlesimport android.view.animation.AnimationUtils;
91f02412fe85c5ff4a011793b408fb33bafb122340Rich Humphreyimport android.view.inputmethod.InputMethodManager;
9247fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.webkit.CookieManager;
9347fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.webkit.CookieSyncManager;
9447fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.webkit.JsPromptResult;
9547fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.webkit.JsResult;
9647fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.webkit.SslErrorHandler;
9747fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.webkit.WebSettings;
9847fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.webkit.WebView;
9947fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.widget.AbsListView;
10047fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.widget.AbsSeekBar;
10147fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.widget.AdapterView;
10247fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.widget.ArrayAdapter;
10347fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.widget.CursorAdapter;
10447fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.widget.ExpandableListView;
10547fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.widget.Filter;
10647fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.widget.FrameLayout;
10747fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.widget.Gallery;
10847fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.widget.GridView;
10947fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.widget.ImageView;
11047fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.widget.ListView;
11147fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.widget.ProgressBar;
11247fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.widget.RatingBar;
11347fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.widget.RemoteViews;
11447fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.widget.ResourceCursorAdapter;
11547fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.widget.SeekBar;
11647fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.widget.SimpleCursorAdapter;
11747fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.widget.TabHost;
11847fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.widget.TextView;
11947fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.widget.Toast;
12047fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.widget.VideoView;
12147fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.widget.ViewAnimator;
12247fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.widget.ViewFlipper;
12347fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultzimport android.widget.ZoomButtonsController;
124b5d56e95f27d484ad3098ac18867262e7c8826c1Christian Williams & Phil Goodwinimport com.xtremelabs.robolectric.bytecode.RobolectricInternals;
125b5d56e95f27d484ad3098ac18867262e7c8826c1Christian Williams & Phil Goodwinimport com.xtremelabs.robolectric.bytecode.ShadowWrangler;
12607a3254138fdfe62b70c194b458879c51bea72b4Phil Goodwinimport com.xtremelabs.robolectric.shadows.*;
1272cdde11355e7c249e83a8b7aaabae5977bbc3e49Phil Goodwinimport com.xtremelabs.robolectric.tester.org.apache.http.FakeHttpLayer;
1282cdde11355e7c249e83a8b7aaabae5977bbc3e49Phil Goodwinimport com.xtremelabs.robolectric.tester.org.apache.http.HttpRequestInfo;
1292cdde11355e7c249e83a8b7aaabae5977bbc3e49Phil Goodwinimport com.xtremelabs.robolectric.tester.org.apache.http.RequestMatcher;
13071d7c3bcf0400e4b81109dd785187e1a93da3cabChristian Williamsimport com.xtremelabs.robolectric.util.Scheduler;
131145ab32c7d7c170f2eb4f44660e2ab4c045bc5f1Tim Labeeuw & Tyler Schultzimport org.apache.http.Header;
132145ab32c7d7c170f2eb4f44660e2ab4c045bc5f1Tim Labeeuw & Tyler Schultzimport org.apache.http.HttpRequest;
133145ab32c7d7c170f2eb4f44660e2ab4c045bc5f1Tim Labeeuw & Tyler Schultzimport org.apache.http.HttpResponse;
134145ab32c7d7c170f2eb4f44660e2ab4c045bc5f1Tim Labeeuw & Tyler Schultzimport org.apache.http.impl.client.DefaultRequestDirector;
135145ab32c7d7c170f2eb4f44660e2ab4c045bc5f1Tim Labeeuw & Tyler Schultz
1362ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richardimport java.lang.reflect.Field;
1372ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richardimport java.lang.reflect.Modifier;
138145ab32c7d7c170f2eb4f44660e2ab4c045bc5f1Tim Labeeuw & Tyler Schultzimport java.util.Arrays;
139145ab32c7d7c170f2eb4f44660e2ab4c045bc5f1Tim Labeeuw & Tyler Schultzimport java.util.List;
1400b378afcde0200166e546c46a7642015accfce49Christian Williams & Ian Fisher
141345fb6b77303f0d3c98cf748fefa0136183bdc79Christian Williamspublic class Robolectric {
1428baea4cbf332f0e0acf559dfab4aa59dd7c71003Christian Williams & Ryan Richard    public static Application application;
1438baea4cbf332f0e0acf559dfab4aa59dd7c71003Christian Williams & Ryan Richard
1440b378afcde0200166e546c46a7642015accfce49Christian Williams & Ian Fisher    public static <T> T newInstanceOf(Class<T> clazz) {
145111e2299b5157f072d9e62406bd3c6fea9036cd4Christian Williams & Phil Goodwin        return RobolectricInternals.newInstanceOf(clazz);
1460b378afcde0200166e546c46a7642015accfce49Christian Williams & Ian Fisher    }
1470b378afcde0200166e546c46a7642015accfce49Christian Williams & Ian Fisher
1481741463ed4618ec2b72cbd7764649fd0cca10a40Phil Goodwin    public static Object newInstanceOf(String className) {
1491741463ed4618ec2b72cbd7764649fd0cca10a40Phil Goodwin        try {
1501741463ed4618ec2b72cbd7764649fd0cca10a40Phil Goodwin            Class<?> clazz = Class.forName(className);
1511741463ed4618ec2b72cbd7764649fd0cca10a40Phil Goodwin            if (clazz != null) {
1521741463ed4618ec2b72cbd7764649fd0cca10a40Phil Goodwin                return newInstanceOf(clazz);
1531741463ed4618ec2b72cbd7764649fd0cca10a40Phil Goodwin            }
1541741463ed4618ec2b72cbd7764649fd0cca10a40Phil Goodwin        } catch (ClassNotFoundException e) {
1551741463ed4618ec2b72cbd7764649fd0cca10a40Phil Goodwin        }
1561741463ed4618ec2b72cbd7764649fd0cca10a40Phil Goodwin        return null;
1571741463ed4618ec2b72cbd7764649fd0cca10a40Phil Goodwin    }
1581741463ed4618ec2b72cbd7764649fd0cca10a40Phil Goodwin
159e7a41c9b39233781c97dd599ff61024f0510e308Christian Williams    public static void bindShadowClass(Class<?> shadowClass) {
160111e2299b5157f072d9e62406bd3c6fea9036cd4Christian Williams & Phil Goodwin        RobolectricInternals.bindShadowClass(shadowClass);
161e7a41c9b39233781c97dd599ff61024f0510e308Christian Williams    }
162e7a41c9b39233781c97dd599ff61024f0510e308Christian Williams
163e7a41c9b39233781c97dd599ff61024f0510e308Christian Williams    public static void bindDefaultShadowClasses() {
164638a930898ff7ff4d62b8a3028439142af65e4b4Christian Williams        bindShadowClasses(getDefaultShadowClasses());
165638a930898ff7ff4d62b8a3028439142af65e4b4Christian Williams    }
166638a930898ff7ff4d62b8a3028439142af65e4b4Christian Williams
167638a930898ff7ff4d62b8a3028439142af65e4b4Christian Williams    public static void bindShadowClasses(List<Class<?>> shadowClasses) {
168638a930898ff7ff4d62b8a3028439142af65e4b4Christian Williams        for (Class<?> shadowClass : shadowClasses) {
169638a930898ff7ff4d62b8a3028439142af65e4b4Christian Williams            bindShadowClass(shadowClass);
170e7a41c9b39233781c97dd599ff61024f0510e308Christian Williams        }
171e7a41c9b39233781c97dd599ff61024f0510e308Christian Williams    }
172e7a41c9b39233781c97dd599ff61024f0510e308Christian Williams
173cedd6ea60db4bf5744077021f20092005bb3d461Tyler Schultz    /**
174cedd6ea60db4bf5744077021f20092005bb3d461Tyler Schultz     * Invoke this utility method in tests to reveal which Android api classes and methods are being invoked
175cedd6ea60db4bf5744077021f20092005bb3d461Tyler Schultz     * for which there are no shadows or shadow methods. This helps expose which methods are being invoked
176cedd6ea60db4bf5744077021f20092005bb3d461Tyler Schultz     * either by a third party library or application code which need new shadow methods to be written. Generates
177cedd6ea60db4bf5744077021f20092005bb3d461Tyler Schultz     * output for the current test only.
178cedd6ea60db4bf5744077021f20092005bb3d461Tyler Schultz     */
179cedd6ea60db4bf5744077021f20092005bb3d461Tyler Schultz    public static void logMissingInvokedShadowMethods() {
180cedd6ea60db4bf5744077021f20092005bb3d461Tyler Schultz        ShadowWrangler.getInstance().logMissingInvokedShadowMethods();
181cedd6ea60db4bf5744077021f20092005bb3d461Tyler Schultz    }
182cedd6ea60db4bf5744077021f20092005bb3d461Tyler Schultz
183e7a41c9b39233781c97dd599ff61024f0510e308Christian Williams    public static List<Class<?>> getDefaultShadowClasses() {
1840b378afcde0200166e546c46a7642015accfce49Christian Williams & Ian Fisher        return Arrays.asList(
185a739b57a6b1a99f14d586f609f0f62f48b8e2284Ian Fisher & Tyler Schultz                ShadowAbsListView.class,
186c146ad8871a32bbf62aca259ede77d3f9cd07773Tyler Schultz                ShadowAbsoluteLayout.class,
1876bdff425fce6705103662f20370c9b371ccf23adRich Humphrey                ShadowAbsSeekBar.class,
188afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowAbsSpinner.class,
1899893f7266e7dcc1332743887045bd69991441421Christian Williams                ShadowAbstractCursor.class,
190afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowActivity.class,
191e955bad0fcce60545a0d3ee54ca3006493947518Michael Portuesi                ShadowActivityInfo.class,
192e955bad0fcce60545a0d3ee54ca3006493947518Michael Portuesi                ShadowActivityGroup.class,
193f68d6a67f035c4bde0c95dcf6c3aa2d68a436972Michael Portuesi                ShadowActivityManager.class,
194afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowAdapterView.class,
195afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowAddress.class,
196cf37f66c9bcbf0b25b879fbb78c9442c9101c7acRich Humphrey                ShadowAlarmManager.class,
197afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowAlertDialog.class,
198afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowAlertDialog.ShadowBuilder.class,
19912fe960436852d05ef79837a462e6132b2e50c8aJan Berkel                ShadowAndroidHttpClient.class,
2003f78da998ce73c1c7c25798a7e7e4f19287eff23Michael Portuesi                ShadowAnimation.class,
20186b7c8791d1e5bff8403ec7fe6b8bdf7b5e05bf9Zoodles                ShadowAnimationUtils.class,
202afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowApplication.class,
203afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowAppWidgetManager.class,
204e9c420439254fc0c893e44987db10e1418fff338mylacc                ShadowArrayAdapter.class,
205114296321cba71f8133713306049ce3b411e8563Gonçalo Silva                ShadowAssetManager.class,
20671d7c3bcf0400e4b81109dd785187e1a93da3cabChristian Williams                ShadowAsyncTask.class,
20736a56b1b82e6409c81ccc87ab7148cef105b4517Michael Portuesi                ShadowAudioManager.class,
208afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowBaseAdapter.class,
209ae26238c7d01caef84ceddd8ffb42c32306918d6Josh Lauer & Christian Williams                ShadowBitmap.class,
210afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowBitmapDrawable.class,
211b01474a3329222965d31068f5c33e59c6e6aa6a4Josh Lauer & Christian Williams                ShadowBitmapFactory.class,
212b01474a3329222965d31068f5c33e59c6e6aa6a4Josh Lauer & Christian Williams                ShadowBluetoothAdapter.class,
213b01474a3329222965d31068f5c33e59c6e6aa6a4Josh Lauer & Christian Williams                ShadowBluetoothDevice.class,
21475d564ab2b02cbe8a0d8cb33779530f72ea813abChristian Williams & Ryan Richard                ShadowBundle.class,
215ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz                ShadowButton.class,
21631af8607e2c7da6ba8708f57c4b67b6b4aaad921Michael Portuesi                ShadowCamera.class,
21731af8607e2c7da6ba8708f57c4b67b6b4aaad921Michael Portuesi                ShadowCameraParameters.class,
218cf37f66c9bcbf0b25b879fbb78c9442c9101c7acRich Humphrey                ShadowCameraSize.class,
219afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowCanvas.class,
220034305f3b3bcd3c0e44a6f7fb1cdcf1a9363a0c1Tyler Schultz                ShadowClipboardManager.class,
221a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz                ShadowColorDrawable.class,
222e3bf0c0e84dd3464de0a508f9c03512d23c11bd8Josh Lauer & Christian Williams                ShadowColorMatrix.class,
223e3bf0c0e84dd3464de0a508f9c03512d23c11bd8Josh Lauer & Christian Williams                ShadowColorMatrixColorFilter.class,
224b613c76c40bffb15fbde84df32365bde3ffdb4c5Christian Williams                ShadowColorStateList.class,
225afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowComponentName.class,
226cf37f66c9bcbf0b25b879fbb78c9442c9101c7acRich Humphrey                ShadowCompoundButton.class,
227cf37f66c9bcbf0b25b879fbb78c9442c9101c7acRich Humphrey                ShadowConfiguration.class,
2287581f8ab1d3fb2950ae13fc09a9b1862d1ec3af1Macarse                ShadowConnectivityManager.class,
229e2289f903639a009fb18f4d32b1bf56e44201ea6Diego Garcia                ShadowContentProvider.class,
23020b94927aff24d7bd975d6ee717f1b65da9ee7c1Josh Lauer & Christian Williams                ShadowContentResolver.class,
2314a45629f825eace379ab2df5dc80e2abdd669f5aDiego Garcia                ShadowContentUris.class,
2329893f7266e7dcc1332743887045bd69991441421Christian Williams                ShadowContentValues.class,
233afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowContext.class,
234afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowContextWrapper.class,
2351dcccba609fb2036994803ca6d71f9c76e1fe8e9Chee Wong                ShadowContextThemeWrapper.class,
236b613c76c40bffb15fbde84df32365bde3ffdb4c5Christian Williams                ShadowCookieManager.class,
23732fa4fc29ce30047ce5c3c00e3eea5cf1c27b056adriancowham                ShadowCookieSyncManager.class,
238f43bd55afd9cc5f265e7c58227d0d9d49770c40bStefano Dacchille                ShadowCriteria.class,
239c97f858ddc2222e96a6492c5fba30775cfeac4e4Zoodles                ShadowCountDownTimer.class,
2400dabe713bf2d78df246d9cff18ed11363491a2acAdam Cohen-Rose                ShadowCursorAdapter.class,
241e2623f9312670f0df22c6e6c5f7969bd01d18130Joe Moore & Tyler Schultz                ShadowDatabaseUtils.class,
2428bdd4405f79972e8c153562e96afa912f3fe81c8Graeme Duncan                ShadowDateFormat.class,
243cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz                ShadowDefaultRequestDirector.class,
244d1eee6c4ec28a6c17455ce5c29efb833f30dd5d0Michael Portuesi                ShadowDisplay.class,
245afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowDrawable.class,
246afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowDialog.class,
24794c593173ef0ac64cca724199d6228057e1c8fd8Rich Humphrey                ShadowDialogPreference.class,
248afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowEditText.class,
249e9d4b241c1e9b9225da1424698942c358ef22162Chris Heisterkamp & Joe Moore                ShadowEnvironment.class,
2509044c45523b0b9da7cfc8e0cc8c5ecf5d3085ee0Cristian                ShadowExpandableListView.class,
2513783a296406676c639a954d14ef464a4207de689Joe Moore & Lowell Kirsh                ShadowFilter.class,
252d4e5d32b81cae2114f66739beaac6fe1ceeead0dJosh Lauer & Christian Williams                ShadowFloatMath.class,
253b8898598e493d4df40038a501ff77f2aa437e9efMike Grafton & Tyler Schultz                ShadowFrameLayout.class,
25447fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultz                ShadowGallery.class,
25506abdc35948a13a609c6e6c972d6fa19603b7fe9Joe Moore & Ryan Richard                ShadowGeocoder.class,
256afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowGeoPoint.class,
2575be5c864634de9072b89911eab6d0c8d772c9ad3Rich Humphrey                ShadowGridView.class,
258afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowHandler.class,
25955ecbcdc0a061eb75050880c54ec0ffc6235a44dGlenn Jahnke & Rick Kawala                ShadowHandlerThread.class,
26050526fd965fbed3d06b5213d62b2c76db9932a2fRyan Richard                ShadowHtml.class,
261afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowImageView.class,
262f02412fe85c5ff4a011793b408fb33bafb122340Rich Humphrey                ShadowInputMethodManager.class,
263afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowIntent.class,
264afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowIntentFilter.class,
265a739b57a6b1a99f14d586f609f0f62f48b8e2284Ian Fisher & Tyler Schultz                ShadowIntentFilterAuthorityEntry.class,
266afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowItemizedOverlay.class,
267d5ce8bb5be735e441111505979d12f20600a553aMike Mazur & Tyler Schultz                ShadowJsPromptResult.class,
268d5ce8bb5be735e441111505979d12f20600a553aMike Mazur & Tyler Schultz                ShadowJsResult.class,
269b188febae0b24463565d9b6157bd43e0ff22a269David Farber & Ryan Richard                ShadowKeyEvent.class,
27008fb8f8709b227d9c12f5197c1884f22137075a5adriancowham                ShadowKeyguardManager.class,
2717061d146b8d12c0d234c2ea322847e47008a3d24pivotal                ShadowKeyGuardLock.class,
27273d4a15f75e5175c3b07de348834dd2d6684aae5Aaron Day                ShadowLayerDrawable.class,
273afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowLayoutInflater.class,
274afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowLayoutParams.class,
27584c8e78264cc160819f32a6006049f87d81c43deDavid Farber & Joe Moore                ShadowLinearLayout.class,
276afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowListActivity.class,
277db942f0867e5e1f3bc97eb8facf686bdbca7c20aRich Humphrey                ShadowListPreference.class,
278afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowListView.class,
279afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowLocation.class,
280afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowLocationManager.class,
2811ce4754cba537b287d24e85e7d5434408ae89f2dTyler Schultz                ShadowLog.class,
282afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowLooper.class,
283afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowMapController.class,
284afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowMapActivity.class,
285afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowMapView.class,
2860d21afe8a769457a7c6691bd8418a73aafb46beaJosh Lauer & Christian Williams                ShadowMatrix.class,
2875480630a30500f34f6e03ed218d80f5ad843ed87Rich Humphrey                ShadowMediaPlayer.class,
28876209fe88929d880ac6e008d5a3e6e1e1dd4939aPhil Goodwin                ShadowMediaRecorder.class,
289d3f9a56dffcdd129355351019aef9652cce0d6b2Josh Lauer & Christian Williams                ShadowMediaStore.ShadowImages.ShadowMedia.class,
29076209fe88929d880ac6e008d5a3e6e1e1dd4939aPhil Goodwin                ShadowMenuInflater.class,
291407d29789bdc3ef4e50edbcf51eb8c30641cbd99Jan Berkel                ShadowMessage.class,
292afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowMotionEvent.class,
29307a3254138fdfe62b70c194b458879c51bea72b4Phil Goodwin                ShadowNotification.class,
294a739b57a6b1a99f14d586f609f0f62f48b8e2284Ian Fisher & Tyler Schultz                ShadowNdefMessage.class,
295a739b57a6b1a99f14d586f609f0f62f48b8e2284Ian Fisher & Tyler Schultz                ShadowNdefRecord.class,
296a739b57a6b1a99f14d586f609f0f62f48b8e2284Ian Fisher & Tyler Schultz                ShadowNfcAdapter.class,
29707a3254138fdfe62b70c194b458879c51bea72b4Phil Goodwin                ShadowNotificationManager.class,
2987581f8ab1d3fb2950ae13fc09a9b1862d1ec3af1Macarse                ShadowNetworkInfo.class,
299afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowOverlayItem.class,
300afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowPaint.class,
3012ed797adb849f96d26ffaae31d68a2a67f56f27bJan Berkel                ShadowPair.class,
302cb6dcc93e483e0537f8c93595bb6687b392a0d2eadriancowham                ShadowParcel.class,
3039e562ba543ceec13e2553e043c24b15ff6d999ebPhil Goodwin & Tyler Schultz                ShadowPasswordTransformationMethod.class,
304afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowPath.class,
305afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowPendingIntent.class,
306afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowPoint.class,
307d4e5d32b81cae2114f66739beaac6fe1ceeead0dJosh Lauer & Christian Williams                ShadowPointF.class,
308b613c76c40bffb15fbde84df32365bde3ffdb4c5Christian Williams                ShadowPowerManager.class,
309079a071612e45353e46bde2f29eff7e6fc762f01Rich Humphrey                ShadowPreference.class,
310eb47a8c4f989358eb087720918ff77a8e1e6f260Rich Humphrey                ShadowPreferenceActivity.class,
311eb47a8c4f989358eb087720918ff77a8e1e6f260Rich Humphrey                ShadowPreferenceCategory.class,
312eb47a8c4f989358eb087720918ff77a8e1e6f260Rich Humphrey                ShadowPreferenceGroup.class,
313e8637c922e4f8e681769d63689accb89e6108056Michael Portuesi                ShadowPreferenceManager.class,
314860f8c39f4b14a23d103310d523c7855d40b8f58Rich Humphrey                ShadowPreferenceScreen.class,
315079a071612e45353e46bde2f29eff7e6fc762f01Rich Humphrey                ShadowProgressBar.class,
3164ba5e84ecdbe474b0f5a55f19f1b2af49fbbe822Rich Humphrey                ShadowProgressDialog.class,
31784c8e78264cc160819f32a6006049f87d81c43deDavid Farber & Joe Moore                ShadowRadioButton.class,
31884c8e78264cc160819f32a6006049f87d81c43deDavid Farber & Joe Moore                ShadowRadioGroup.class,
319c5e7ea096261d2e0220a763119aeb58fab47de2eMike Grafton & Tyler Schultz                ShadowRatingBar.class,
320afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowRect.class,
3219e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowham                ShadowResolveInfo.class,
322afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowRemoteViews.class,
323a739b57a6b1a99f14d586f609f0f62f48b8e2284Ian Fisher & Tyler Schultz                ShadowResultReceiver.class,
3240dabe713bf2d78df246d9cff18ed11363491a2acAdam Cohen-Rose                ShadowResourceCursorAdapter.class,
325afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowResources.class,
326b613c76c40bffb15fbde84df32365bde3ffdb4c5Christian Williams                ShadowResources.ShadowTheme.class,
3277cce13cdd16925bcc5ec4af389eaedd682db6275Tim Labeeuw & Tyler Schultz                ShadowScanResult.class,
328b82ccb9a3ef511d607ca5c4238a50d78a6aeaebaRich Humphrey                ShadowSeekBar.class,
3295aab2036d99aa0bdced8c12a41a2b67a0bc8d676Dave                ShadowSensorManager.class,
330afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowService.class,
331afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowSettings.class,
332afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowSettings.ShadowSecure.class,
333afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowSettings.ShadowSystem.class,
3340dabe713bf2d78df246d9cff18ed11363491a2acAdam Cohen-Rose                ShadowSimpleCursorAdapter.class,
335145ab32c7d7c170f2eb4f44660e2ab4c045bc5f1Tim Labeeuw & Tyler Schultz                ShadowShapeDrawable.class,
3363efec46bd0d61f590dbffe5c91cb2580b98628feDave                ShadowSmsManager.class,
337afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowSpannableStringBuilder.class,
33857d524e7eebcea4a186fd6f849142a56bcaa1b2aJan Berkel                ShadowSyncResult.class,
33957d524e7eebcea4a186fd6f849142a56bcaa1b2aJan Berkel                ShadowSyncResult.ShadowSyncStats.class,
340ac32ea1c5b4b7bca81fccd0be4f5a43ae8f2a11bChris Van Vranken                ShadowSQLiteProgram.class,
3419893f7266e7dcc1332743887045bd69991441421Christian Williams                ShadowSQLiteDatabase.class,
342b574da97569d2d098d0aaebbb947bffa8514a4f7Michael Portuesi                ShadowSQLiteCursor.class,
34328dd1fc86f58b35b79e2fedc13f5b26f600a9a6aMichael Portuesi                ShadowSQLiteOpenHelper.class,
344bdb2b1d336367115dee931221ea77fe1833607daChris Van Vranken                ShadowSQLiteStatement.class,
3453a99d4817b65b7eb0a9f44486072dbf43fdb2144Michael Portuesi                ShadowSQLiteQueryBuilder.class,
346c1a22de534a98808eb2ce5c6c956e25c0d9625e2Rich Humphrey                ShadowSslErrorHandler.class,
347284a307f028fc1b9c6175a28b60280bc53b5dbe6adriancowham                ShadowStateListDrawable.class,
3487dc1a70de2b28bdf70d887accfb5805f3497bda8Josh Lauer & Christian Williams                ShadowSurfaceView.class,
349203e06c477634129655bee1db352d7e574513f9cJoe Moore, Lowell Kirsh & Ryan Richard                ShadowTabActivity.class,
350b8898598e493d4df40038a501ff77f2aa437e9efMike Grafton & Tyler Schultz                ShadowTabHost.class,
351b8898598e493d4df40038a501ff77f2aa437e9efMike Grafton & Tyler Schultz                ShadowTabSpec.class,
352c59af8991708feeca9cdfb028101113a79ef73f4Glenn Jahnke & Lenny Turetsky                ShadowTelephonyManager.class,
353afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowTextUtils.class,
354afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowTextView.class,
355afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowToast.class,
356b613c76c40bffb15fbde84df32365bde3ffdb4c5Christian Williams                ShadowTypedArray.class,
357afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowTypedValue.class,
358509ae1952861e52c35161e0102c545eb4d45242eDiego Garcia                ShadowUriMatcher.class,
359237888bb1e926aea523388de5d511a35f38506efPhil Goodwin & Tyler Schultz                ShadowURLSpan.class,
3602afd69b7f52c3c4c1fbe17f46e84d0cb178d3adeKathy Lin                ShadowVideoView.class,
361afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowView.class,
36204466b87c86d2581d1708ac45240d18498a76060Aaron Day                ShadowViewAnimator.class,
36349a4cce94ec0c54e1e90dbe74bf5b028e7b9300bPhil Plante & Ryan Richard                ShadowViewConfiguration.class,
364afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowViewGroup.class,
36504466b87c86d2581d1708ac45240d18498a76060Aaron Day                ShadowViewFlipper.class,
3660e1c92ca35030e2c173b141c41341636bbb7a258Christian Williams                ShadowViewStub.class,
3670189062c055157592d5aa6ef59b26fae6f91dea4Rich Humphrey                ShadowWebSettings.class,
3689ef88bf39bff29cb39dee4d84542c8f5a6178748Tyler Schultz                ShadowWebView.class,
369011d50de8590a67a76d440ecfae2d8d2a114bcffTim Labeeuw & Tyler Schultz                ShadowWifiConfiguration.class,
3709310da98cc39d731742caddf3f48a3dcbd8f5b77Mike Mazur                ShadowWifiInfo.class,
371afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowWifiManager.class,
372e2f97afa26ab916fbc36ca1bbf18ba507023ab50Christian Williams                ShadowWindow.class,
373afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowZoomButtonsController.class
374adfaceabbda4c8c51f24a0def8926075bd7306adChristian Williams        );
3750b378afcde0200166e546c46a7642015accfce49Christian Williams & Ian Fisher    }
37690008046fcb6aac20be2df7a0aa07129f6f0d62bIan Fisher
377345fb6b77303f0d3c98cf748fefa0136183bdc79Christian Williams    public static void resetStaticState() {
378e6dfaf271dbaf3ac1bb82d953669a56a02fc71d6Phil Goodwin & Tyler Schultz        ShadowWrangler.getInstance().silence();
379345fb6b77303f0d3c98cf748fefa0136183bdc79Christian Williams        Robolectric.application = new Application();
380d092cebc8c9179d3a138827fd65961b867e2c53fJosh Lauer & Christian Williams        ShadowBitmapFactory.reset();
381be87a589a85b713d1755c36b2eca8462177f91f3David Farber & Joe Moore        ShadowDrawable.reset();
3822ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard        ShadowMediaStore.reset();
383d80699d3abb6e7d65feba541222ed4fe76e90ae5Tyler Schultz        ShadowLog.reset();
384d89c81f2589fb08cba4320a7b69defba0da22a28Jan Berkel        ShadowContext.clearFilesAndCache();
385570d4f805f8fdbd8c786330989b40706129f5b1ePhil Goodwin & Ryan Richard        ShadowLooper.resetThreadLoopers();
38690008046fcb6aac20be2df7a0aa07129f6f0d62bIan Fisher    }
3871fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
3889122a05312e767618ba0545a951df9cab86c8716Christian Williams    public static <T> T directlyOn(T shadowedObject) {
3899122a05312e767618ba0545a951df9cab86c8716Christian Williams        return RobolectricInternals.directlyOn(shadowedObject);
3909122a05312e767618ba0545a951df9cab86c8716Christian Williams    }
3919122a05312e767618ba0545a951df9cab86c8716Christian Williams
392a739b57a6b1a99f14d586f609f0f62f48b8e2284Ian Fisher & Tyler Schultz    public static ShadowAbsListView shadowOf(AbsListView instance) {
393a739b57a6b1a99f14d586f609f0f62f48b8e2284Ian Fisher & Tyler Schultz        return (ShadowAbsListView) shadowOf_(instance);
394a739b57a6b1a99f14d586f609f0f62f48b8e2284Ian Fisher & Tyler Schultz    }
395a739b57a6b1a99f14d586f609f0f62f48b8e2284Ian Fisher & Tyler Schultz
396cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowAbsSeekBar shadowOf(AbsSeekBar instance) {
397cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowAbsSeekBar) shadowOf_(instance);
3981fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
3991fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
400cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowActivity shadowOf(Activity instance) {
401cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowActivity) shadowOf_(instance);
40273d4a15f75e5175c3b07de348834dd2d6684aae5Aaron Day    }
40373d4a15f75e5175c3b07de348834dd2d6684aae5Aaron Day
404cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowActivityGroup shadowOf(ActivityGroup instance) {
405cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowActivityGroup) shadowOf_(instance);
406a915d5453773d2acb8cc72a70bf8460d6fd6cd26Lowell Kirsh & Ryan Richard    }
407a915d5453773d2acb8cc72a70bf8460d6fd6cd26Lowell Kirsh & Ryan Richard
408cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowActivityManager shadowOf(ActivityManager instance) {
409cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowActivityManager) shadowOf_(instance);
4101fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
4111fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
412cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowAdapterView shadowOf(AdapterView instance) {
413cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowAdapterView) shadowOf_(instance);
4147581f8ab1d3fb2950ae13fc09a9b1862d1ec3af1Macarse    }
4157581f8ab1d3fb2950ae13fc09a9b1862d1ec3af1Macarse
416cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowAlarmManager shadowOf(AlarmManager instance) {
417cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowAlarmManager) Robolectric.shadowOf_(instance);
4182e790fd8d977ca70d83da5bcaeb0beca290ff237Lowell Kirsh & Ryan Richard    }
4192e790fd8d977ca70d83da5bcaeb0beca290ff237Lowell Kirsh & Ryan Richard
420cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowAlertDialog shadowOf(AlertDialog instance) {
421cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowAlertDialog) shadowOf_(instance);
4227581f8ab1d3fb2950ae13fc09a9b1862d1ec3af1Macarse    }
4237581f8ab1d3fb2950ae13fc09a9b1862d1ec3af1Macarse
424cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowAnimation shadowOf(Animation instance) {
425cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowAnimation) shadowOf_(instance);
4266c15208cbe99e92bec0a70b5ca479314ea45fc3eTyler Schultz    }
4276c15208cbe99e92bec0a70b5ca479314ea45fc3eTyler Schultz
428cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowAnimationUtils shadowOf(AnimationUtils instance) {
429cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowAnimationUtils) shadowOf_(instance);
430523401082f8da71727f102003baf023e6c356386adriancowham    }
431ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
432cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowApplication shadowOf(Application instance) {
433cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowApplication) shadowOf_(instance);
4341fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
4351fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
436cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowAppWidgetManager shadowOf(AppWidgetManager instance) {
437cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowAppWidgetManager) shadowOf_(instance);
4381fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
4391fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
440cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowArrayAdapter shadowOf(ArrayAdapter instance) {
441cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowArrayAdapter) shadowOf_(instance);
4421fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
4431fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
444cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowAssetManager shadowOf(AssetManager instance) {
445cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowAssetManager) Robolectric.shadowOf_(instance);
4469044c45523b0b9da7cfc8e0cc8c5ecf5d3085ee0Cristian    }
4479044c45523b0b9da7cfc8e0cc8c5ecf5d3085ee0Cristian
448cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowAudioManager shadowOf(AudioManager instance) {
449cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowAudioManager) shadowOf_(instance);
4501fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
4511fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
452cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowBitmap shadowOf(Bitmap other) {
453cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowBitmap) Robolectric.shadowOf_(other);
4543783a296406676c639a954d14ef464a4207de689Joe Moore & Lowell Kirsh    }
4553783a296406676c639a954d14ef464a4207de689Joe Moore & Lowell Kirsh
456cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowBitmapDrawable shadowOf(BitmapDrawable instance) {
457cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowBitmapDrawable) shadowOf_(instance);
4583783a296406676c639a954d14ef464a4207de689Joe Moore & Lowell Kirsh    }
4593783a296406676c639a954d14ef464a4207de689Joe Moore & Lowell Kirsh
460cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowBluetoothAdapter shadowOf(BluetoothAdapter other) {
461cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowBluetoothAdapter) Robolectric.shadowOf_(other);
4621fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
4631fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
464cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowBluetoothDevice shadowOf(BluetoothDevice other) {
465cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowBluetoothDevice) Robolectric.shadowOf_(other);
466f91a118112ae13d39251dd3c09f1d85d33283ba1Christian Williams & Phil Goodwin    }
467ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
468cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowBundle shadowOf(Bundle instance) {
469cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowBundle) shadowOf_(instance);
47063dda805c3f505f03263a3d4830747e53b421795Greg Choi & Mike Grafton    }
47163dda805c3f505f03263a3d4830747e53b421795Greg Choi & Mike Grafton
472cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowCamera shadowOf(Camera instance) {
473cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowCamera) shadowOf_(instance);
4741fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
4751fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
476cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowCameraParameters shadowOf(Camera.Parameters instance) {
477cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowCameraParameters) shadowOf_(instance);
47832fa4fc29ce30047ce5c3c00e3eea5cf1c27b056adriancowham    }
47932fa4fc29ce30047ce5c3c00e3eea5cf1c27b056adriancowham
480cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowCameraSize shadowOf(Camera.Size instance) {
481cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowCameraSize) shadowOf_(instance);
4821fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
4831fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
484cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowCanvas shadowOf(Canvas instance) {
485cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowCanvas) shadowOf_(instance);
4861fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
4871fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
488034305f3b3bcd3c0e44a6f7fb1cdcf1a9363a0c1Tyler Schultz    public static ShadowClipboardManager shadowOf(ClipboardManager instance) {
489034305f3b3bcd3c0e44a6f7fb1cdcf1a9363a0c1Tyler Schultz        return (ShadowClipboardManager) shadowOf_(instance);
490034305f3b3bcd3c0e44a6f7fb1cdcf1a9363a0c1Tyler Schultz    }
491034305f3b3bcd3c0e44a6f7fb1cdcf1a9363a0c1Tyler Schultz
492cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowColorDrawable shadowOf(ColorDrawable instance) {
493cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowColorDrawable) shadowOf_(instance);
494079a071612e45353e46bde2f29eff7e6fc762f01Rich Humphrey    }
495ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
496cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowColorMatrix shadowOf(ColorMatrix instance) {
497cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowColorMatrix) shadowOf_(instance);
498eb47a8c4f989358eb087720918ff77a8e1e6f260Rich Humphrey    }
499ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
500cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowConfiguration shadowOf(Configuration instance) {
501cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowConfiguration) Robolectric.shadowOf_(instance);
502eb47a8c4f989358eb087720918ff77a8e1e6f260Rich Humphrey    }
503ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
504cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowConnectivityManager shadowOf(ConnectivityManager instance) {
505cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowConnectivityManager) shadowOf_(instance);
506eb47a8c4f989358eb087720918ff77a8e1e6f260Rich Humphrey    }
507ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
508cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowCookieManager shadowOf(CookieManager instance) {
509cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowCookieManager) shadowOf_(instance);
510860f8c39f4b14a23d103310d523c7855d40b8f58Rich Humphrey    }
511ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
512cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowContentResolver shadowOf(ContentResolver instance) {
513cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowContentResolver) shadowOf_(instance);
514079a071612e45353e46bde2f29eff7e6fc762f01Rich Humphrey    }
515ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
516cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowCookieSyncManager shadowOf(CookieSyncManager instance) {
517cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowCookieSyncManager) shadowOf_(instance);
5184ba5e84ecdbe474b0f5a55f19f1b2af49fbbe822Rich Humphrey    }
519ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
520cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowContext shadowOf(Context instance) {
521cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowContext) shadowOf_(instance);
5221fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
5231fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
524cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowContentValues shadowOf(ContentValues other) {
525cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowContentValues) Robolectric.shadowOf_(other);
526c5e7ea096261d2e0220a763119aeb58fab47de2eMike Grafton & Tyler Schultz    }
527c5e7ea096261d2e0220a763119aeb58fab47de2eMike Grafton & Tyler Schultz
528cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowContextWrapper shadowOf(ContextWrapper instance) {
529cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowContextWrapper) shadowOf_(instance);
530db942f0867e5e1f3bc97eb8facf686bdbca7c20aRich Humphrey    }
531db942f0867e5e1f3bc97eb8facf686bdbca7c20aRich Humphrey
532cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowCountDownTimer shadowOf(CountDownTimer instance) {
533cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowCountDownTimer) Robolectric.shadowOf_(instance);
5341fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
5351fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
536cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowCursorAdapter shadowOf(CursorAdapter instance) {
537cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowCursorAdapter) shadowOf_(instance);
538145ab32c7d7c170f2eb4f44660e2ab4c045bc5f1Tim Labeeuw & Tyler Schultz    }
539145ab32c7d7c170f2eb4f44660e2ab4c045bc5f1Tim Labeeuw & Tyler Schultz
540cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowDateFormat shadowOf(DateFormat instance) {
541cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowDateFormat) shadowOf_(instance);
542c1a22de534a98808eb2ce5c6c956e25c0d9625e2Rich Humphrey    }
5431fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
544cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowDefaultRequestDirector shadowOf(DefaultRequestDirector instance) {
545cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowDefaultRequestDirector) shadowOf_(instance);
546e3bf0c0e84dd3464de0a508f9c03512d23c11bd8Josh Lauer & Christian Williams    }
547e3bf0c0e84dd3464de0a508f9c03512d23c11bd8Josh Lauer & Christian Williams
548cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowDialog shadowOf(Dialog instance) {
549cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowDialog) shadowOf_(instance);
5501fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
5511fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
552cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowDialogPreference shadowOf(DialogPreference instance) {
553cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowDialogPreference) shadowOf_(instance);
5541fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
5551fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
556cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowDrawable shadowOf(Drawable instance) {
557cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowDrawable) shadowOf_(instance);
55804466b87c86d2581d1708ac45240d18498a76060Aaron Day    }
55904466b87c86d2581d1708ac45240d18498a76060Aaron Day
560cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowDisplay shadowOf(Display instance) {
561cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowDisplay) shadowOf_(instance);
5624d6be96cb3b92defaa18cca3a79298b4821ba8ccJoe Moore & Tyler Schultz    }
5634d6be96cb3b92defaa18cca3a79298b4821ba8ccJoe Moore & Tyler Schultz
564cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowExpandableListView shadowOf(ExpandableListView instance) {
565cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowExpandableListView) shadowOf_(instance);
566a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz    }
567a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz
568cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowFilter shadowOf(Filter instance) {
569cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowFilter) shadowOf_(instance);
5701fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
5711fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
572cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowFrameLayout shadowOf(FrameLayout instance) {
573cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowFrameLayout) shadowOf_(instance);
5740189062c055157592d5aa6ef59b26fae6f91dea4Rich Humphrey    }
5750189062c055157592d5aa6ef59b26fae6f91dea4Rich Humphrey
57647fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultz    public static ShadowGallery shadowOf(Gallery instance) {
57747fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultz        return (ShadowGallery) shadowOf_(instance);
57847fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultz    }
57947fa620f97960cf74f08e427dc608f693fbef7f1Tim Labeeuw & Tyler Schultz
580cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowGeocoder shadowOf(Geocoder instance) {
581cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowGeocoder) shadowOf_(instance);
5826cf9d6f657e61d727afc221dd157ae6ca41714baTyler Schultz    }
5836cf9d6f657e61d727afc221dd157ae6ca41714baTyler Schultz
584cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowGridView shadowOf(GridView instance) {
585cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowGridView) shadowOf_(instance);
5861fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
5871fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
588cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowHandler shadowOf(Handler instance) {
589cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowHandler) shadowOf_(instance);
5901fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
5911fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
59255ecbcdc0a061eb75050880c54ec0ffc6235a44dGlenn Jahnke & Rick Kawala    public static ShadowHandlerThread shadowOf(HandlerThread instance) {
59355ecbcdc0a061eb75050880c54ec0ffc6235a44dGlenn Jahnke & Rick Kawala        return (ShadowHandlerThread) shadowOf_(instance);
59455ecbcdc0a061eb75050880c54ec0ffc6235a44dGlenn Jahnke & Rick Kawala    }
59555ecbcdc0a061eb75050880c54ec0ffc6235a44dGlenn Jahnke & Rick Kawala
596433b46be67768332f764eab6879e0649993d79e3Christian Williams    public static ShadowImageView shadowOf(ImageView instance) {
597433b46be67768332f764eab6879e0649993d79e3Christian Williams        return (ShadowImageView) shadowOf_(instance);
5981fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
5991fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
600cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowInputMethodManager shadowOf(InputMethodManager instance) {
601cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowInputMethodManager) shadowOf_(instance);
6029e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowham    }
603ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
604cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowIntent shadowOf(Intent instance) {
605cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowIntent) shadowOf_(instance);
6061fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
6071fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
608d5ce8bb5be735e441111505979d12f20600a553aMike Mazur & Tyler Schultz    public static ShadowJsPromptResult shadowOf(JsPromptResult instance) {
609d5ce8bb5be735e441111505979d12f20600a553aMike Mazur & Tyler Schultz        return (ShadowJsPromptResult) shadowOf_(instance);
610d5ce8bb5be735e441111505979d12f20600a553aMike Mazur & Tyler Schultz    }
611d5ce8bb5be735e441111505979d12f20600a553aMike Mazur & Tyler Schultz
612d5ce8bb5be735e441111505979d12f20600a553aMike Mazur & Tyler Schultz    public static ShadowJsResult shadowOf(JsResult instance) {
613d5ce8bb5be735e441111505979d12f20600a553aMike Mazur & Tyler Schultz        return (ShadowJsResult) shadowOf_(instance);
614d5ce8bb5be735e441111505979d12f20600a553aMike Mazur & Tyler Schultz    }
615d5ce8bb5be735e441111505979d12f20600a553aMike Mazur & Tyler Schultz
616cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowKeyguardManager shadowOf(KeyguardManager instance) {
617cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowKeyguardManager) shadowOf_(instance);
6181fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
619ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
6207061d146b8d12c0d234c2ea322847e47008a3d24pivotal    public static ShadowKeyGuardLock shadowOf(KeyguardManager.KeyguardLock instance) {
6217061d146b8d12c0d234c2ea322847e47008a3d24pivotal        return (ShadowKeyGuardLock) shadowOf_(instance);
6227061d146b8d12c0d234c2ea322847e47008a3d24pivotal    }
6237061d146b8d12c0d234c2ea322847e47008a3d24pivotal
624cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowLayerDrawable shadowOf(LayerDrawable instance) {
625cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowLayerDrawable) shadowOf_(instance);
62694c593173ef0ac64cca724199d6228057e1c8fd8Rich Humphrey    }
6271fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
628cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowLayoutInflater shadowOf(LayoutInflater instance) {
629cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowLayoutInflater) shadowOf_(instance);
630c95377d49257364984344908f301574ebe8d4d9cPhil Goodwin & Tyler Schultz    }
631c95377d49257364984344908f301574ebe8d4d9cPhil Goodwin & Tyler Schultz
632cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowListActivity shadowOf(ListActivity instance) {
633cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowListActivity) shadowOf_(instance);
6341fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
6351fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
636cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowListPreference shadowOf(ListPreference instance) {
637cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowListPreference) shadowOf_(instance);
6381fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
6391fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
640cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowListView shadowOf(ListView instance) {
641cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowListView) shadowOf_(instance);
6421fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
6431fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
644433b46be67768332f764eab6879e0649993d79e3Christian Williams    public static ShadowLocationManager shadowOf(LocationManager instance) {
645433b46be67768332f764eab6879e0649993d79e3Christian Williams        return (ShadowLocationManager) shadowOf_(instance);
6461fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
6471fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
648cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowLooper shadowOf(Looper instance) {
649cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowLooper) shadowOf_(instance);
6501fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
6511fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
652cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowMatrix shadowOf(Matrix other) {
653cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowMatrix) Robolectric.shadowOf_(other);
65428307faed142337b147ba17851e24ad3535f36e4Glenn Jahnke & Michael Haddad    }
65528307faed142337b147ba17851e24ad3535f36e4Glenn Jahnke & Michael Haddad
656cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowMediaPlayer shadowOf(MediaPlayer instance) {
657cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowMediaPlayer) shadowOf_(instance);
658a739b57a6b1a99f14d586f609f0f62f48b8e2284Ian Fisher & Tyler Schultz    }
659a739b57a6b1a99f14d586f609f0f62f48b8e2284Ian Fisher & Tyler Schultz
660cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowMediaRecorder shadowOf(MediaRecorder instance) {
661cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowMediaRecorder) shadowOf_(instance);
662e7a41c9b39233781c97dd599ff61024f0510e308Christian Williams    }
663adfaceabbda4c8c51f24a0def8926075bd7306adChristian Williams
664b539366073ccb47433de7191dbbf519ed4ab2d8fPhil Goodwin    public static ShadowMenuInflater shadowOf(MenuInflater instance) {
665b539366073ccb47433de7191dbbf519ed4ab2d8fPhil Goodwin        return (ShadowMenuInflater) shadowOf_(instance);
666b539366073ccb47433de7191dbbf519ed4ab2d8fPhil Goodwin    }
667b539366073ccb47433de7191dbbf519ed4ab2d8fPhil Goodwin
668cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowMotionEvent shadowOf(MotionEvent other) {
669cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowMotionEvent) Robolectric.shadowOf_(other);
670adfaceabbda4c8c51f24a0def8926075bd7306adChristian Williams    }
671adfaceabbda4c8c51f24a0def8926075bd7306adChristian Williams
672cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowNetworkInfo shadowOf(NetworkInfo instance) {
673cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowNetworkInfo) shadowOf_(instance);
6744a9aa604410e3c8f91158a4caa5700f45a22eb47Christian Williams    }
675e7a41c9b39233781c97dd599ff61024f0510e308Christian Williams
676cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowNotification shadowOf(Notification other) {
677cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowNotification) Robolectric.shadowOf_(other);
678adfaceabbda4c8c51f24a0def8926075bd7306adChristian Williams    }
679e7a41c9b39233781c97dd599ff61024f0510e308Christian Williams
680cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowNotificationManager shadowOf(NotificationManager other) {
681cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowNotificationManager) Robolectric.shadowOf_(other);
682bdb2b1d336367115dee931221ea77fe1833607daChris Van Vranken    }
683cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz
684cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowPaint shadowOf(Paint instance) {
685cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowPaint) shadowOf_(instance);
686ac32ea1c5b4b7bca81fccd0be4f5a43ae8f2a11bChris Van Vranken    }
687b970da24960c184335a2aba413e3f5bfbbed7825Chris Van Vranken
688cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowParcel shadowOf(Parcel instance) {
689cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowParcel) shadowOf_(instance);
6909893f7266e7dcc1332743887045bd69991441421Christian Williams    }
691f96b9a1f17d47e48d1f5f8e29b4ed7ffccc739abPhil Goodwin & Tyler Schultz
692cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowPasswordTransformationMethod shadowOf(PasswordTransformationMethod instance) {
693cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowPasswordTransformationMethod) shadowOf_(instance);
694b574da97569d2d098d0aaebbb947bffa8514a4f7Michael Portuesi    }
6959893f7266e7dcc1332743887045bd69991441421Christian Williams
696cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowPath shadowOf(Path instance) {
697cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowPath) shadowOf_(instance);
69828dd1fc86f58b35b79e2fedc13f5b26f600a9a6aMichael Portuesi    }
699f96b9a1f17d47e48d1f5f8e29b4ed7ffccc739abPhil Goodwin & Tyler Schultz
700cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowPendingIntent shadowOf(PendingIntent instance) {
701cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowPendingIntent) shadowOf_(instance);
7023a99d4817b65b7eb0a9f44486072dbf43fdb2144Michael Portuesi    }
703f96b9a1f17d47e48d1f5f8e29b4ed7ffccc739abPhil Goodwin & Tyler Schultz
704cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowPowerManager shadowOf(PowerManager instance) {
705cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowPowerManager) shadowOf_(instance);
7069893f7266e7dcc1332743887045bd69991441421Christian Williams    }
7079893f7266e7dcc1332743887045bd69991441421Christian Williams
708cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowPreference shadowOf(Preference instance) {
709cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowPreference) shadowOf_(instance);
71031af8607e2c7da6ba8708f57c4b67b6b4aaad921Michael Portuesi    }
711f96b9a1f17d47e48d1f5f8e29b4ed7ffccc739abPhil Goodwin & Tyler Schultz
712cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowPreferenceActivity shadowOf(PreferenceActivity instance) {
713cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowPreferenceActivity) shadowOf_(instance);
71431af8607e2c7da6ba8708f57c4b67b6b4aaad921Michael Portuesi    }
7159893f7266e7dcc1332743887045bd69991441421Christian Williams
716cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowPreferenceCategory shadowOf(PreferenceCategory instance) {
717cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowPreferenceCategory) shadowOf_(instance);
718cf37f66c9bcbf0b25b879fbb78c9442c9101c7acRich Humphrey    }
71940c6251719cccc0a84ae99c976d2836b14374ce6Christian Williams
720cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowPreferenceGroup shadowOf(PreferenceGroup instance) {
721cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowPreferenceGroup) shadowOf_(instance);
7225480630a30500f34f6e03ed218d80f5ad843ed87Rich Humphrey    }
7235480630a30500f34f6e03ed218d80f5ad843ed87Rich Humphrey
724cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowPreferenceScreen shadowOf(PreferenceScreen instance) {
725cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowPreferenceScreen) shadowOf_(instance);
72631af8607e2c7da6ba8708f57c4b67b6b4aaad921Michael Portuesi    }
727f96b9a1f17d47e48d1f5f8e29b4ed7ffccc739abPhil Goodwin & Tyler Schultz
728cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowProgressBar shadowOf(ProgressBar instance) {
729cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowProgressBar) shadowOf_(instance);
73024f155944b10583afd970905e5dbe0acdfc9e0efPhil Goodwin & Tyler Schultz    }
73124f155944b10583afd970905e5dbe0acdfc9e0efPhil Goodwin & Tyler Schultz
732cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowProgressDialog shadowOf(ProgressDialog instance) {
733cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowProgressDialog) shadowOf_(instance);
734cf37f66c9bcbf0b25b879fbb78c9442c9101c7acRich Humphrey    }
735cf37f66c9bcbf0b25b879fbb78c9442c9101c7acRich Humphrey
736cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowRect shadowOf(Rect instance) {
737cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowRect) shadowOf_(instance);
738cf37f66c9bcbf0b25b879fbb78c9442c9101c7acRich Humphrey    }
739cf37f66c9bcbf0b25b879fbb78c9442c9101c7acRich Humphrey
740cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowRatingBar shadowOf(RatingBar instance) {
741cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowRatingBar) shadowOf_(instance);
742ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz    }
743ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
744cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowRemoteViews shadowOf(RemoteViews instance) {
745cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowRemoteViews) shadowOf_(instance);
746b01474a3329222965d31068f5c33e59c6e6aa6a4Josh Lauer & Christian Williams    }
747b01474a3329222965d31068f5c33e59c6e6aa6a4Josh Lauer & Christian Williams
748cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowResolveInfo shadowOf(ResolveInfo instance) {
749cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowResolveInfo) shadowOf_(instance);
750b01474a3329222965d31068f5c33e59c6e6aa6a4Josh Lauer & Christian Williams    }
751b01474a3329222965d31068f5c33e59c6e6aa6a4Josh Lauer & Christian Williams
752cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowResourceCursorAdapter shadowOf(ResourceCursorAdapter instance) {
753cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowResourceCursorAdapter) shadowOf_(instance);
754b01474a3329222965d31068f5c33e59c6e6aa6a4Josh Lauer & Christian Williams    }
755b01474a3329222965d31068f5c33e59c6e6aa6a4Josh Lauer & Christian Williams
756cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowResources shadowOf(Resources instance) {
757cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowResources) shadowOf_(instance);
7580d21afe8a769457a7c6691bd8418a73aafb46beaJosh Lauer & Christian Williams    }
7590d21afe8a769457a7c6691bd8418a73aafb46beaJosh Lauer & Christian Williams
760cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowResultReceiver shadowOf(ResultReceiver instance) {
761cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowResultReceiver) shadowOf_(instance);
762d4e5d32b81cae2114f66739beaac6fe1ceeead0dJosh Lauer & Christian Williams    }
763d4e5d32b81cae2114f66739beaac6fe1ceeead0dJosh Lauer & Christian Williams
7647cce13cdd16925bcc5ec4af389eaedd682db6275Tim Labeeuw & Tyler Schultz    public static ShadowScanResult shadowOf(ScanResult instance) {
7657cce13cdd16925bcc5ec4af389eaedd682db6275Tim Labeeuw & Tyler Schultz        return (ShadowScanResult) shadowOf_(instance);
7667cce13cdd16925bcc5ec4af389eaedd682db6275Tim Labeeuw & Tyler Schultz    }
7677cce13cdd16925bcc5ec4af389eaedd682db6275Tim Labeeuw & Tyler Schultz
768cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowSeekBar shadowOf(SeekBar instance) {
769cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowSeekBar) shadowOf_(instance);
77007a3254138fdfe62b70c194b458879c51bea72b4Phil Goodwin    }
77107a3254138fdfe62b70c194b458879c51bea72b4Phil Goodwin
772cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowSensorManager shadowOf(SensorManager instance) {
773cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowSensorManager) shadowOf_(instance);
77407a3254138fdfe62b70c194b458879c51bea72b4Phil Goodwin    }
77507a3254138fdfe62b70c194b458879c51bea72b4Phil Goodwin
776cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowService shadowOf(Service instance) {
777cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowService) shadowOf_(instance);
7786bdff425fce6705103662f20370c9b371ccf23adRich Humphrey    }
779ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
780cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowShapeDrawable shadowOf(ShapeDrawable instance) {
781cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowShapeDrawable) shadowOf_(instance);
782f87e94db052e8cf78eed7b08de5baa2551f4a134sorack    }
783ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
784cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowSimpleCursorAdapter shadowOf(SimpleCursorAdapter instance) {
785cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowSimpleCursorAdapter) shadowOf_(instance);
786b82ccb9a3ef511d607ca5c4238a50d78a6aeaebaRich Humphrey    }
7873efec46bd0d61f590dbffe5c91cb2580b98628feDave
7883efec46bd0d61f590dbffe5c91cb2580b98628feDave    public static ShadowSmsManager shadowOf(SmsManager instance) {
7893efec46bd0d61f590dbffe5c91cb2580b98628feDave    	return (ShadowSmsManager) shadowOf_(instance);
7903efec46bd0d61f590dbffe5c91cb2580b98628feDave    }
791ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
792cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowSQLiteCursor shadowOf(SQLiteCursor other) {
793cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowSQLiteCursor) Robolectric.shadowOf_(other);
794cb6dcc93e483e0537f8c93595bb6687b392a0d2eadriancowham    }
795ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
796cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowSQLiteDatabase shadowOf(SQLiteDatabase other) {
797cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowSQLiteDatabase) Robolectric.shadowOf_(other);
79886b7c8791d1e5bff8403ec7fe6b8bdf7b5e05bf9Zoodles    }
799ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
800cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowSQLiteOpenHelper shadowOf(SQLiteOpenHelper other) {
801cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowSQLiteOpenHelper) Robolectric.shadowOf_(other);
80286b7c8791d1e5bff8403ec7fe6b8bdf7b5e05bf9Zoodles    }
8034aaebe6f156648e1074f10aadc89f485175c3043Felix H. Dahlke
804cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowSQLiteProgram shadowOf(SQLiteProgram other) {
805cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowSQLiteProgram) Robolectric.shadowOf_(other);
806b8898598e493d4df40038a501ff77f2aa437e9efMike Grafton & Tyler Schultz    }
807b8898598e493d4df40038a501ff77f2aa437e9efMike Grafton & Tyler Schultz
808cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowSQLiteQueryBuilder shadowOf(SQLiteQueryBuilder other) {
809cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowSQLiteQueryBuilder) Robolectric.shadowOf_(other);
810b8898598e493d4df40038a501ff77f2aa437e9efMike Grafton & Tyler Schultz    }
811b8898598e493d4df40038a501ff77f2aa437e9efMike Grafton & Tyler Schultz
812cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowSQLiteStatement shadowOf(SQLiteStatement other) {
813cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowSQLiteStatement) Robolectric.shadowOf_(other);
814b8898598e493d4df40038a501ff77f2aa437e9efMike Grafton & Tyler Schultz    }
815b8898598e493d4df40038a501ff77f2aa437e9efMike Grafton & Tyler Schultz
816cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowSslErrorHandler shadowOf(SslErrorHandler instance) {
817cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowSslErrorHandler) shadowOf_(instance);
8184aaebe6f156648e1074f10aadc89f485175c3043Felix H. Dahlke    }
819284a307f028fc1b9c6175a28b60280bc53b5dbe6adriancowham
820284a307f028fc1b9c6175a28b60280bc53b5dbe6adriancowham    public static ShadowStateListDrawable shadowOf(StateListDrawable instance) {
821284a307f028fc1b9c6175a28b60280bc53b5dbe6adriancowham    	return (ShadowStateListDrawable) shadowOf_(instance);
822284a307f028fc1b9c6175a28b60280bc53b5dbe6adriancowham    }
823ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
824cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowTabHost shadowOf(TabHost instance) {
825cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowTabHost) shadowOf_(instance);
8261047b8740177c264e807a91bd6beeb09a502f6feDavid Farber & Lowell Kirsh    }
827ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
828cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowTabSpec shadowOf(TabHost.TabSpec instance) {
829cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowTabSpec) shadowOf_(instance);
830ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz    }
831e7a2156a30e8d4f3409f7a2b1d6a5e656423b315Graeme Duncan
832cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowTelephonyManager shadowOf(TelephonyManager instance) {
833cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowTelephonyManager) shadowOf_(instance);
8340dabe713bf2d78df246d9cff18ed11363491a2acAdam Cohen-Rose    }
835ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
836cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowTextView shadowOf(TextView instance) {
837cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowTextView) shadowOf_(instance);
8380dabe713bf2d78df246d9cff18ed11363491a2acAdam Cohen-Rose    }
839ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
840cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowToast shadowOf(Toast instance) {
841cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowToast) shadowOf_(instance);
842509ae1952861e52c35161e0102c545eb4d45242eDiego Garcia    }
843509ae1952861e52c35161e0102c545eb4d45242eDiego Garcia
844509ae1952861e52c35161e0102c545eb4d45242eDiego Garcia    public static ShadowUriMatcher shadowOf(UriMatcher instance) {
845509ae1952861e52c35161e0102c545eb4d45242eDiego Garcia        return (ShadowUriMatcher) shadowOf_(instance);
846c59af8991708feeca9cdfb028101113a79ef73f4Glenn Jahnke & Lenny Turetsky    }
847ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
848cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowView shadowOf(View instance) {
849cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowView) shadowOf_(instance);
85008fb8f8709b227d9c12f5197c1884f22137075a5adriancowham    }
851ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
852cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowViewAnimator shadowOf(ViewAnimator instance) {
853cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowViewAnimator) shadowOf_(instance);
854ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz    }
855ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
85649a4cce94ec0c54e1e90dbe74bf5b028e7b9300bPhil Plante & Ryan Richard    public static ShadowViewConfiguration shadowOf(ViewConfiguration instance) {
85749a4cce94ec0c54e1e90dbe74bf5b028e7b9300bPhil Plante & Ryan Richard        return (ShadowViewConfiguration) shadowOf_(instance);
85849a4cce94ec0c54e1e90dbe74bf5b028e7b9300bPhil Plante & Ryan Richard    }
85949a4cce94ec0c54e1e90dbe74bf5b028e7b9300bPhil Plante & Ryan Richard
860cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowViewFlipper shadowOf(ViewFlipper instance) {
861cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowViewFlipper) shadowOf_(instance);
862cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    }
863cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz
864cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowViewGroup shadowOf(ViewGroup instance) {
865cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowViewGroup) shadowOf_(instance);
866ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz    }
867ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
868ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz    public static ShadowVideoView shadowOf(VideoView instance) {
869ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz        return (ShadowVideoView) shadowOf_(instance);
870ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz    }
871ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
872cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowWebSettings shadowOf(WebSettings instance) {
873cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowWebSettings) shadowOf_(instance);
874ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz    }
875ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
876cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowWebView shadowOf(WebView instance) {
877cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowWebView) shadowOf_(instance);
878c59af8991708feeca9cdfb028101113a79ef73f4Glenn Jahnke & Lenny Turetsky    }
879cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz
880011d50de8590a67a76d440ecfae2d8d2a114bcffTim Labeeuw & Tyler Schultz    public static ShadowWifiConfiguration shadowOf(WifiConfiguration instance) {
881011d50de8590a67a76d440ecfae2d8d2a114bcffTim Labeeuw & Tyler Schultz        return (ShadowWifiConfiguration) shadowOf_(instance);
882011d50de8590a67a76d440ecfae2d8d2a114bcffTim Labeeuw & Tyler Schultz    }
883011d50de8590a67a76d440ecfae2d8d2a114bcffTim Labeeuw & Tyler Schultz
884cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowWifiInfo shadowOf(WifiInfo instance) {
885cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowWifiInfo) shadowOf_(instance);
8865aab2036d99aa0bdced8c12a41a2b67a0bc8d676Dave    }
887ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
888cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowWifiManager shadowOf(WifiManager instance) {
889cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowWifiManager) shadowOf_(instance);
890cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    }
891cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz
892cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowZoomButtonsController shadowOf(ZoomButtonsController instance) {
893cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowZoomButtonsController) shadowOf_(instance);
8949e562ba543ceec13e2553e043c24b15ff6d999ebPhil Goodwin & Tyler Schultz    }
8959e562ba543ceec13e2553e043c24b15ff6d999ebPhil Goodwin & Tyler Schultz
8961fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    @SuppressWarnings({"unchecked"})
897433b46be67768332f764eab6879e0649993d79e3Christian Williams    public static <P, R> P shadowOf_(R instance) {
898cee7ff89bfcb83d6cd65e6de9b7cafe2c1caf40aChristian Williams        return (P) ShadowWrangler.getInstance().shadowOf(instance);
8991fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
90071d7c3bcf0400e4b81109dd785187e1a93da3cabChristian Williams
9010fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin    /**
9020fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin     * Runs any background tasks previously queued by {@link android.os.AsyncTask#execute(Object[])}.
903b539366073ccb47433de7191dbbf519ed4ab2d8fPhil Goodwin     * <p/>
9040fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin     * <p/>
9050fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin     * Note: calling this method does not pause or un-pause the scheduler.
9060fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin     */
90771d7c3bcf0400e4b81109dd785187e1a93da3cabChristian Williams    public static void runBackgroundTasks() {
9080fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin        getBackgroundScheduler().advanceBy(0);
90971d7c3bcf0400e4b81109dd785187e1a93da3cabChristian Williams    }
91071d7c3bcf0400e4b81109dd785187e1a93da3cabChristian Williams
9110fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin    /**
9120fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin     * Runs any immediately runnable tasks previously queued on the UI thread,
9130fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin     * e.g. by {@link Activity#runOnUiThread(Runnable)} or {@link android.os.AsyncTask#onPostExecute(Object)}.
914b539366073ccb47433de7191dbbf519ed4ab2d8fPhil Goodwin     * <p/>
9150fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin     * <p/>
9160fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin     * Note: calling this method does not pause or un-pause the scheduler.
9170fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin     */
91871d7c3bcf0400e4b81109dd785187e1a93da3cabChristian Williams    public static void runUiThreadTasks() {
919a4f7d50f8e6f12d541421383544fe16c185e4bbcPhil Goodwin & Tyler Schultz        getUiThreadScheduler().advanceBy(0);
92071d7c3bcf0400e4b81109dd785187e1a93da3cabChristian Williams    }
921cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz
922e9cf86cff984930a892bcad1fa1b410a47cd2d90Joe Moore & Ryan Richard    public static void runUiThreadTasksIncludingDelayedTasks() {
923e9cf86cff984930a892bcad1fa1b410a47cd2d90Joe Moore & Ryan Richard        getUiThreadScheduler().advanceToLastPostedRunnable();
924e9cf86cff984930a892bcad1fa1b410a47cd2d90Joe Moore & Ryan Richard    }
925e9cf86cff984930a892bcad1fa1b410a47cd2d90Joe Moore & Ryan Richard
926cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz    /**
927bd9537bd36434865d4d25ef332bd388d39a51e34Christian Williams & Phil Goodwin     * Sets up an HTTP response to be returned by calls to Apache's {@code HttpClient} implementers.
928cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz     *
929b539366073ccb47433de7191dbbf519ed4ab2d8fPhil Goodwin     * @param statusCode   the status code of the response
930cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz     * @param responseBody the body of the response
93150462c4dff2d5f6aa1f5f9683935f5f0270c8a2dJan Berkel     * @param headers      optional headers for the request
932cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz     */
93350462c4dff2d5f6aa1f5f9683935f5f0270c8a2dJan Berkel    public static void addPendingHttpResponse(int statusCode, String responseBody, Header... headers) {
93450462c4dff2d5f6aa1f5f9683935f5f0270c8a2dJan Berkel        getFakeHttpLayer().addPendingHttpResponse(statusCode, responseBody, headers);
935cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz    }
936cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz
937cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz    /**
938bd9537bd36434865d4d25ef332bd388d39a51e34Christian Williams & Phil Goodwin     * Sets up an HTTP response to be returned by calls to Apache's {@code HttpClient} implementers.
939cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz     *
9406f34840c49a26f54f62ead83509e3f64bed7e0cfNeal Sanche     * @param statusCode   the status code of the response
9416f34840c49a26f54f62ead83509e3f64bed7e0cfNeal Sanche     * @param responseBody the body of the response
942ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz     * @param contentType  the contentType of the response
94350462c4dff2d5f6aa1f5f9683935f5f0270c8a2dJan Berkel     * @deprecated         use {@link #addPendingHttpResponse(int, String, Header...)} instead
9446f34840c49a26f54f62ead83509e3f64bed7e0cfNeal Sanche     */
94539a416145e85c7008805ef493b2d61f66d669158Tyler Schultz    public static void addPendingHttpResponseWithContentType(int statusCode, String responseBody, Header contentType) {
94650462c4dff2d5f6aa1f5f9683935f5f0270c8a2dJan Berkel        getFakeHttpLayer().addPendingHttpResponse(statusCode, responseBody, contentType);
9476f34840c49a26f54f62ead83509e3f64bed7e0cfNeal Sanche    }
9486f34840c49a26f54f62ead83509e3f64bed7e0cfNeal Sanche
9496f34840c49a26f54f62ead83509e3f64bed7e0cfNeal Sanche    /**
9506f34840c49a26f54f62ead83509e3f64bed7e0cfNeal Sanche     * Sets up an HTTP response to be returned by calls to Apache's {@code HttpClient} implementers.
9516f34840c49a26f54f62ead83509e3f64bed7e0cfNeal Sanche     *
952cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz     * @param httpResponse the response
953cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz     */
954b2fea8dc6ecf427c1e620148946b6fd83a0bd210Phil Goodwin & Tyler Schultz    public static void addPendingHttpResponse(HttpResponse httpResponse) {
955f91a118112ae13d39251dd3c09f1d85d33283ba1Christian Williams & Phil Goodwin        getFakeHttpLayer().addPendingHttpResponse(httpResponse);
956cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz    }
957cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz
958cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz    /**
9597cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     * Accessor to obtain HTTP requests made during the current test in the order in which they were made.
960cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz     *
961cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz     * @param index index of the request to retrieve.
962cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz     * @return the requested request.
963cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz     */
964b2fea8dc6ecf427c1e620148946b6fd83a0bd210Phil Goodwin & Tyler Schultz    public static HttpRequest getSentHttpRequest(int index) {
965b2fea8dc6ecf427c1e620148946b6fd83a0bd210Phil Goodwin & Tyler Schultz        return ShadowDefaultRequestDirector.getSentHttpRequest(index);
966cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz    }
967cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz
968f7591628cda8719684f21aa809a5e4ddc634ec56Phil Goodwin & Rick Kawala    public static HttpRequest getLatestSentHttpRequest() {
969f7591628cda8719684f21aa809a5e4ddc634ec56Phil Goodwin & Rick Kawala        return ShadowDefaultRequestDirector.getLatestSentHttpRequest();
970f7591628cda8719684f21aa809a5e4ddc634ec56Phil Goodwin & Rick Kawala    }
971f7591628cda8719684f21aa809a5e4ddc634ec56Phil Goodwin & Rick Kawala
9727cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    /**
9732399fd1c2f5ff65d329717361082957d309f7314Alexander Murmann & Jesse Toth     * Accessor to find out if HTTP requests were made during the current test.
9742399fd1c2f5ff65d329717361082957d309f7314Alexander Murmann & Jesse Toth     *
9752399fd1c2f5ff65d329717361082957d309f7314Alexander Murmann & Jesse Toth     * @return whether a request was made.
9762399fd1c2f5ff65d329717361082957d309f7314Alexander Murmann & Jesse Toth     */
9772399fd1c2f5ff65d329717361082957d309f7314Alexander Murmann & Jesse Toth    public static boolean httpRequestWasMade() {
9782399fd1c2f5ff65d329717361082957d309f7314Alexander Murmann & Jesse Toth        return getShadowApplication().getFakeHttpLayer().hasRequestInfos();
9792399fd1c2f5ff65d329717361082957d309f7314Alexander Murmann & Jesse Toth    }
9802399fd1c2f5ff65d329717361082957d309f7314Alexander Murmann & Jesse Toth
9815ed9c8041b5f927c930d50edef58c5378d12f89cAlexander Murmann & Phil Goodwin    public static boolean httpRequestWasMade(String uri) {
9825ed9c8041b5f927c930d50edef58c5378d12f89cAlexander Murmann & Phil Goodwin        return getShadowApplication().getFakeHttpLayer().hasRequestMatchingRule(new FakeHttpLayer.UriRequestMatcher(uri));
9835ed9c8041b5f927c930d50edef58c5378d12f89cAlexander Murmann & Phil Goodwin    }
9845ed9c8041b5f927c930d50edef58c5378d12f89cAlexander Murmann & Phil Goodwin
9852399fd1c2f5ff65d329717361082957d309f7314Alexander Murmann & Jesse Toth    /**
9867cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     * Accessor to obtain metadata for an HTTP request made during the current test in the order in which they were made.
9877cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     *
9887cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     * @param index index of the request to retrieve.
9897cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     * @return the requested request metadata.
9907cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     */
9917cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    public static HttpRequestInfo getSentHttpRequestInfo(int index) {
9927cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin        return ShadowDefaultRequestDirector.getSentHttpRequestInfo(index);
9937cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    }
9947cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin
9957cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    /**
9967cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     * Adds an HTTP response rule. The response will be returned when the rule is matched.
9977cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     *
998b539366073ccb47433de7191dbbf519ed4ab2d8fPhil Goodwin     * @param method   method to match.
999b539366073ccb47433de7191dbbf519ed4ab2d8fPhil Goodwin     * @param uri      uri to match.
10007cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     * @param response response to return when a match is found.
10017cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     */
10027cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    public static void addHttpResponseRule(String method, String uri, HttpResponse response) {
1003f91a118112ae13d39251dd3c09f1d85d33283ba1Christian Williams & Phil Goodwin        getFakeHttpLayer().addHttpResponseRule(method, uri, response);
10047cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    }
10057cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin
10067cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    /**
10077cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     * Adds an HTTP response rule with a default method of GET. The response will be returned when the rule is matched.
10087cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     *
1009b539366073ccb47433de7191dbbf519ed4ab2d8fPhil Goodwin     * @param uri      uri to match.
10107cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     * @param response response to return when a match is found.
10117cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     */
10127cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    public static void addHttpResponseRule(String uri, HttpResponse response) {
1013f91a118112ae13d39251dd3c09f1d85d33283ba1Christian Williams & Phil Goodwin        getFakeHttpLayer().addHttpResponseRule(uri, response);
10147cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    }
10157cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin
10167cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    /**
10177cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     * Adds an HTTP response rule. The response will be returned when the rule is matched.
10187cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     *
1019b539366073ccb47433de7191dbbf519ed4ab2d8fPhil Goodwin     * @param uri      uri to match.
10207cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     * @param response response to return when a match is found.
10217cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     */
10227cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    public static void addHttpResponseRule(String uri, String response) {
1023f91a118112ae13d39251dd3c09f1d85d33283ba1Christian Williams & Phil Goodwin        getFakeHttpLayer().addHttpResponseRule(uri, response);
10247cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    }
10257cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin
10267cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    /**
10277cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     * Adds an HTTP response rule. The response will be returned when the rule is matched.
10287cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     *
10297cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     * @param requestMatcher custom {@code RequestMatcher}.
1030b539366073ccb47433de7191dbbf519ed4ab2d8fPhil Goodwin     * @param response       response to return when a match is found.
10317cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     */
10324105051dc6b4e1d67766d1ad886bd3b191f8a68fChristian Williams    public static void addHttpResponseRule(RequestMatcher requestMatcher, HttpResponse response) {
1033f91a118112ae13d39251dd3c09f1d85d33283ba1Christian Williams & Phil Goodwin        getFakeHttpLayer().addHttpResponseRule(requestMatcher, response);
1034f91a118112ae13d39251dd3c09f1d85d33283ba1Christian Williams & Phil Goodwin    }
1035f91a118112ae13d39251dd3c09f1d85d33283ba1Christian Williams & Phil Goodwin
10362669b6bbfad4fc63460249729f6d7ae80b002a55Lowell Kirsh    /**
10372669b6bbfad4fc63460249729f6d7ae80b002a55Lowell Kirsh     * Adds an HTTP response rule. For each time the rule is matched, responses will be shifted
10382669b6bbfad4fc63460249729f6d7ae80b002a55Lowell Kirsh     * off the list and returned. When all responses have been given and the rule is matched again,
10392669b6bbfad4fc63460249729f6d7ae80b002a55Lowell Kirsh     * an exception will be thrown.
10402669b6bbfad4fc63460249729f6d7ae80b002a55Lowell Kirsh     *
10412669b6bbfad4fc63460249729f6d7ae80b002a55Lowell Kirsh     * @param requestMatcher custom {@code RequestMatcher}.
10422669b6bbfad4fc63460249729f6d7ae80b002a55Lowell Kirsh     * @param responses      responses to return in order when a match is found.
10432669b6bbfad4fc63460249729f6d7ae80b002a55Lowell Kirsh     */
10442669b6bbfad4fc63460249729f6d7ae80b002a55Lowell Kirsh    public static void addHttpResponseRule(RequestMatcher requestMatcher, List<? extends HttpResponse> responses) {
10452669b6bbfad4fc63460249729f6d7ae80b002a55Lowell Kirsh        getFakeHttpLayer().addHttpResponseRule(requestMatcher, responses);
10462669b6bbfad4fc63460249729f6d7ae80b002a55Lowell Kirsh    }
10472669b6bbfad4fc63460249729f6d7ae80b002a55Lowell Kirsh
1048f91a118112ae13d39251dd3c09f1d85d33283ba1Christian Williams & Phil Goodwin    public static FakeHttpLayer getFakeHttpLayer() {
10497d446513cda09628ec24023cfdebeca847700b52Christian Williams & Phil Goodwin        return getShadowApplication().getFakeHttpLayer();
10507cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    }
10517cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin
1052d76cb3959b31f5def82d0476cc114cc5da06a7a1Phil Goodwin    public static void setDefaultHttpResponse(int statusCode, String responseBody) {
1053d76cb3959b31f5def82d0476cc114cc5da06a7a1Phil Goodwin        getFakeHttpLayer().setDefaultHttpResponse(statusCode, responseBody);
1054d76cb3959b31f5def82d0476cc114cc5da06a7a1Phil Goodwin    }
1055d76cb3959b31f5def82d0476cc114cc5da06a7a1Phil Goodwin
10567cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    public static void setDefaultHttpResponse(HttpResponse defaultHttpResponse) {
1057f91a118112ae13d39251dd3c09f1d85d33283ba1Christian Williams & Phil Goodwin        getFakeHttpLayer().setDefaultHttpResponse(defaultHttpResponse);
1058b2fea8dc6ecf427c1e620148946b6fd83a0bd210Phil Goodwin & Tyler Schultz    }
10595dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz
1060b539795cdd8f6be1b0b01527905a31faea03242cRob Dickerson    public static void clearHttpResponseRules() {
1061b539795cdd8f6be1b0b01527905a31faea03242cRob Dickerson        getFakeHttpLayer().clearHttpResponseRules();
1062b539795cdd8f6be1b0b01527905a31faea03242cRob Dickerson    }
1063b539795cdd8f6be1b0b01527905a31faea03242cRob Dickerson
106454c8f286408ad7e791f9468dcdc2e18cff1681e4Glenn Jahnke & Rick Kawala    public static void clearPendingHttpResponses() {
106554c8f286408ad7e791f9468dcdc2e18cff1681e4Glenn Jahnke & Rick Kawala        getFakeHttpLayer().clearPendingHttpResponses();
106654c8f286408ad7e791f9468dcdc2e18cff1681e4Glenn Jahnke & Rick Kawala    }
106754c8f286408ad7e791f9468dcdc2e18cff1681e4Glenn Jahnke & Rick Kawala
10685dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz    public static void pauseLooper(Looper looper) {
10695dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz        ShadowLooper.pauseLooper(looper);
10705dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz    }
10715dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz
10725dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz    public static void unPauseLooper(Looper looper) {
10735dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz        ShadowLooper.unPauseLooper(looper);
10745dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz    }
10755dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz
10765dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz    public static void pauseMainLooper() {
10775dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz        ShadowLooper.pauseMainLooper();
10785dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz    }
10795dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz
10805dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz    public static void unPauseMainLooper() {
10815dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz        ShadowLooper.unPauseMainLooper();
10825dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz    }
10835dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz
108417a1acc15ca79034594f29ef9168d3692476eb6dLenny Turetsky & Phil Goodwin    public static void idleMainLooper(long interval) {
108544edf424f14a67d7a35501a258a9b96d9c943ccfAlexander Murmann & Phil Goodwin        ShadowLooper.idleMainLooper(interval);
108644edf424f14a67d7a35501a258a9b96d9c943ccfAlexander Murmann & Phil Goodwin    }
108744edf424f14a67d7a35501a258a9b96d9c943ccfAlexander Murmann & Phil Goodwin
1088a4f7d50f8e6f12d541421383544fe16c185e4bbcPhil Goodwin & Tyler Schultz    public static Scheduler getUiThreadScheduler() {
1089a4f7d50f8e6f12d541421383544fe16c185e4bbcPhil Goodwin & Tyler Schultz        return shadowOf(Looper.getMainLooper()).getScheduler();
1090a4f7d50f8e6f12d541421383544fe16c185e4bbcPhil Goodwin & Tyler Schultz    }
10917d446513cda09628ec24023cfdebeca847700b52Christian Williams & Phil Goodwin
10920fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin    public static Scheduler getBackgroundScheduler() {
10930fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin        return getShadowApplication().getBackgroundScheduler();
10940fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin    }
10950fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin
10967d446513cda09628ec24023cfdebeca847700b52Christian Williams & Phil Goodwin    public static ShadowApplication getShadowApplication() {
10977d446513cda09628ec24023cfdebeca847700b52Christian Williams & Phil Goodwin        return shadowOf(Robolectric.application);
10987d446513cda09628ec24023cfdebeca847700b52Christian Williams & Phil Goodwin    }
1099c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams
1100db121a3768da9bd5f9ac210a0b1fc368acb85824Ryan Richard    public static void setDisplayMetricsDensity(float densityMultiplier) {
1101db121a3768da9bd5f9ac210a0b1fc368acb85824Ryan Richard        shadowOf(getShadowApplication().getResources()).setDensity(densityMultiplier);
1102db121a3768da9bd5f9ac210a0b1fc368acb85824Ryan Richard    }
1103db121a3768da9bd5f9ac210a0b1fc368acb85824Ryan Richard
1104c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams    /**
1105c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams     * Calls {@code performClick()} on a {@code View} after ensuring that it and its ancestors are visible and that it
1106c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams     * is enabled.
1107c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams     *
1108c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams     * @param view the view to click on
1109c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams     * @return true if {@code View.OnClickListener}s were found and fired, false otherwise.
1110c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams     * @throws RuntimeException if the preconditions are not met.
1111c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams     */
1112c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams    public static boolean clickOn(View view) {
1113c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams        return shadowOf(view).checkedPerformClick();
1114c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams    }
1115c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams
1116c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams    public static String visualize(View view) {
1117c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams        Canvas canvas = new Canvas();
1118c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams        view.draw(canvas);
1119c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams        return shadowOf(canvas).getDescription();
1120c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams    }
1121c80983d2a778c62de05423980ba943217e2275bcChristian Williams & Phil Goodwin
1122c80983d2a778c62de05423980ba943217e2275bcChristian Williams & Phil Goodwin    public static String visualize(Canvas canvas) {
1123c80983d2a778c62de05423980ba943217e2275bcChristian Williams & Phil Goodwin        return shadowOf(canvas).getDescription();
1124c80983d2a778c62de05423980ba943217e2275bcChristian Williams & Phil Goodwin    }
1125c80983d2a778c62de05423980ba943217e2275bcChristian Williams & Phil Goodwin
1126c80983d2a778c62de05423980ba943217e2275bcChristian Williams & Phil Goodwin    public static String visualize(Bitmap bitmap) {
1127c80983d2a778c62de05423980ba943217e2275bcChristian Williams & Phil Goodwin        return shadowOf(bitmap).getDescription();
1128c80983d2a778c62de05423980ba943217e2275bcChristian Williams & Phil Goodwin    }
11292ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard    /**
11302ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard     * Reflection helper methods.
11312ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard     */
11322ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard    public static class Reflection {
11332ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard        public static <T> T newInstanceOf(Class<T> clazz) {
11342ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard            return Robolectric.newInstanceOf(clazz);
11352ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard        }
11362ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard
11372ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard        public static Object newInstanceOf(String className) {
11382ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard            return Robolectric.newInstanceOf(className);
11392ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard        }
11402ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard
11412ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard        public static void setFinalStaticField(Class classWhichContainsField, String fieldName, Object newValue) {
11422ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard            try {
11432ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard                Field field = classWhichContainsField.getField(fieldName);
11442ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard                field.setAccessible(true);
11452ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard
11462ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard                Field modifiersField = Field.class.getDeclaredField("modifiers");
11472ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard                modifiersField.setAccessible(true);
11482ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard                modifiersField.setInt(field, field.getModifiers() & ~Modifier.FINAL);
11492ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard
11502ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard                field.set(null, newValue);
11512ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard            } catch (NoSuchFieldException e) {
11522ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard                throw new RuntimeException(e);
11532ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard            } catch (IllegalAccessException e) {
11542ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard                throw new RuntimeException(e);
11552ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard            }
11562ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard        }
11572ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard    }
11582ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard
11590b378afcde0200166e546c46a7642015accfce49Christian Williams & Ian Fisher}
1160