Robolectric.java revision 145ab32c7d7c170f2eb4f44660e2ab4c045bc5f1
1345fb6b77303f0d3c98cf748fefa0136183bdc79Christian Williamspackage com.xtremelabs.robolectric;
20b378afcde0200166e546c46a7642015accfce49Christian Williams & Ian Fisher
3ca8b4e7c96507b66cb816a3383c93b02d79a7685Tyler Schultzimport android.app.*;
41fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williamsimport android.appwidget.AppWidgetManager;
5b01474a3329222965d31068f5c33e59c6e6aa6a4Josh Lauer & Christian Williamsimport android.bluetooth.BluetoothAdapter;
6b01474a3329222965d31068f5c33e59c6e6aa6a4Josh Lauer & Christian Williamsimport android.bluetooth.BluetoothDevice;
79893f7266e7dcc1332743887045bd69991441421Christian Williamsimport android.content.ContentValues;
81fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williamsimport android.content.Context;
91fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williamsimport android.content.ContextWrapper;
101fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williamsimport android.content.Intent;
119e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowhamimport android.content.pm.ResolveInfo;
1270a3ec81f0bda52d8388facf562a80e2d16ac96fGonçalo Silvaimport android.content.res.AssetManager;
13cf37f66c9bcbf0b25b879fbb78c9442c9101c7acRich Humphreyimport android.content.res.Configuration;
141fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williamsimport android.content.res.Resources;
15b574da97569d2d098d0aaebbb947bffa8514a4f7Michael Portuesiimport android.database.sqlite.SQLiteCursor;
169893f7266e7dcc1332743887045bd69991441421Christian Williamsimport android.database.sqlite.SQLiteDatabase;
1728dd1fc86f58b35b79e2fedc13f5b26f600a9a6aMichael Portuesiimport android.database.sqlite.SQLiteOpenHelper;
183a99d4817b65b7eb0a9f44486072dbf43fdb2144Michael Portuesiimport android.database.sqlite.SQLiteQueryBuilder;
19ca8b4e7c96507b66cb816a3383c93b02d79a7685Tyler Schultzimport android.graphics.*;
201fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williamsimport android.graphics.drawable.BitmapDrawable;
21a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultzimport android.graphics.drawable.ColorDrawable;
221fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williamsimport android.graphics.drawable.Drawable;
23145ab32c7d7c170f2eb4f44660e2ab4c045bc5f1Tim Labeeuw & Tyler Schultzimport android.graphics.drawable.ShapeDrawable;
2431af8607e2c7da6ba8708f57c4b67b6b4aaad921Michael Portuesiimport android.hardware.Camera;
2506abdc35948a13a609c6e6c972d6fa19603b7fe9Joe Moore & Ryan Richardimport android.location.Geocoder;
261fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williamsimport android.location.LocationManager;
2736a56b1b82e6409c81ccc87ab7148cef105b4517Michael Portuesiimport android.media.AudioManager;
285480630a30500f34f6e03ed218d80f5ad843ed87Rich Humphreyimport android.media.MediaPlayer;
2931af8607e2c7da6ba8708f57c4b67b6b4aaad921Michael Portuesiimport android.media.MediaRecorder;
307581f8ab1d3fb2950ae13fc09a9b1862d1ec3af1Macarseimport android.net.ConnectivityManager;
317581f8ab1d3fb2950ae13fc09a9b1862d1ec3af1Macarseimport android.net.NetworkInfo;
32523401082f8da71727f102003baf023e6c356386adriancowhamimport android.net.wifi.WifiManager;
33145ab32c7d7c170f2eb4f44660e2ab4c045bc5f1Tim Labeeuw & Tyler Schultzimport android.os.*;
34145ab32c7d7c170f2eb4f44660e2ab4c045bc5f1Tim Labeeuw & Tyler Schultzimport android.preference.*;
35c59af8991708feeca9cdfb028101113a79ef73f4Glenn Jahnke & Lenny Turetskyimport android.telephony.TelephonyManager;
368bdd4405f79972e8c153562e96afa912f3fe81c8Graeme Duncanimport android.text.format.DateFormat;
37ca8b4e7c96507b66cb816a3383c93b02d79a7685Tyler Schultzimport android.view.*;
383f78da998ce73c1c7c25798a7e7e4f19287eff23Michael Portuesiimport android.view.animation.Animation;
3986b7c8791d1e5bff8403ec7fe6b8bdf7b5e05bf9Zoodlesimport android.view.animation.AnimationUtils;
40f02412fe85c5ff4a011793b408fb33bafb122340Rich Humphreyimport android.view.inputmethod.InputMethodManager;
4132fa4fc29ce30047ce5c3c00e3eea5cf1c27b056adriancowhamimport android.webkit.CookieSyncManager;
42c1a22de534a98808eb2ce5c6c956e25c0d9625e2Rich Humphreyimport android.webkit.SslErrorHandler;
430189062c055157592d5aa6ef59b26fae6f91dea4Rich Humphreyimport android.webkit.WebSettings;
446cf9d6f657e61d727afc221dd157ae6ca41714baTyler Schultzimport android.webkit.WebView;
45ca8b4e7c96507b66cb816a3383c93b02d79a7685Tyler Schultzimport android.widget.*;
46b5d56e95f27d484ad3098ac18867262e7c8826c1Christian Williams & Phil Goodwinimport com.xtremelabs.robolectric.bytecode.RobolectricInternals;
47b5d56e95f27d484ad3098ac18867262e7c8826c1Christian Williams & Phil Goodwinimport com.xtremelabs.robolectric.bytecode.ShadowWrangler;
4807a3254138fdfe62b70c194b458879c51bea72b4Phil Goodwinimport com.xtremelabs.robolectric.shadows.*;
492cdde11355e7c249e83a8b7aaabae5977bbc3e49Phil Goodwinimport com.xtremelabs.robolectric.tester.org.apache.http.FakeHttpLayer;
502cdde11355e7c249e83a8b7aaabae5977bbc3e49Phil Goodwinimport com.xtremelabs.robolectric.tester.org.apache.http.HttpRequestInfo;
512cdde11355e7c249e83a8b7aaabae5977bbc3e49Phil Goodwinimport com.xtremelabs.robolectric.tester.org.apache.http.RequestMatcher;
5271d7c3bcf0400e4b81109dd785187e1a93da3cabChristian Williamsimport com.xtremelabs.robolectric.util.Scheduler;
53145ab32c7d7c170f2eb4f44660e2ab4c045bc5f1Tim Labeeuw & Tyler Schultzimport org.apache.http.Header;
54145ab32c7d7c170f2eb4f44660e2ab4c045bc5f1Tim Labeeuw & Tyler Schultzimport org.apache.http.HttpRequest;
55145ab32c7d7c170f2eb4f44660e2ab4c045bc5f1Tim Labeeuw & Tyler Schultzimport org.apache.http.HttpResponse;
56145ab32c7d7c170f2eb4f44660e2ab4c045bc5f1Tim Labeeuw & Tyler Schultzimport org.apache.http.impl.client.DefaultRequestDirector;
57145ab32c7d7c170f2eb4f44660e2ab4c045bc5f1Tim Labeeuw & Tyler Schultz
58145ab32c7d7c170f2eb4f44660e2ab4c045bc5f1Tim Labeeuw & Tyler Schultzimport java.util.Arrays;
59145ab32c7d7c170f2eb4f44660e2ab4c045bc5f1Tim Labeeuw & Tyler Schultzimport java.util.List;
600b378afcde0200166e546c46a7642015accfce49Christian Williams & Ian Fisher
61bd9537bd36434865d4d25ef332bd388d39a51e34Christian Williams & Phil Goodwin@SuppressWarnings({"UnusedDeclaration"})
62345fb6b77303f0d3c98cf748fefa0136183bdc79Christian Williamspublic class Robolectric {
638baea4cbf332f0e0acf559dfab4aa59dd7c71003Christian Williams & Ryan Richard    public static Application application;
648baea4cbf332f0e0acf559dfab4aa59dd7c71003Christian Williams & Ryan Richard
650b378afcde0200166e546c46a7642015accfce49Christian Williams & Ian Fisher    public static <T> T newInstanceOf(Class<T> clazz) {
66111e2299b5157f072d9e62406bd3c6fea9036cd4Christian Williams & Phil Goodwin        return RobolectricInternals.newInstanceOf(clazz);
670b378afcde0200166e546c46a7642015accfce49Christian Williams & Ian Fisher    }
680b378afcde0200166e546c46a7642015accfce49Christian Williams & Ian Fisher
691741463ed4618ec2b72cbd7764649fd0cca10a40Phil Goodwin    public static Object newInstanceOf(String className) {
701741463ed4618ec2b72cbd7764649fd0cca10a40Phil Goodwin        try {
711741463ed4618ec2b72cbd7764649fd0cca10a40Phil Goodwin            Class<?> clazz = Class.forName(className);
721741463ed4618ec2b72cbd7764649fd0cca10a40Phil Goodwin            if (clazz != null) {
731741463ed4618ec2b72cbd7764649fd0cca10a40Phil Goodwin                return newInstanceOf(clazz);
741741463ed4618ec2b72cbd7764649fd0cca10a40Phil Goodwin            }
751741463ed4618ec2b72cbd7764649fd0cca10a40Phil Goodwin        } catch (ClassNotFoundException e) {
761741463ed4618ec2b72cbd7764649fd0cca10a40Phil Goodwin        }
771741463ed4618ec2b72cbd7764649fd0cca10a40Phil Goodwin        return null;
781741463ed4618ec2b72cbd7764649fd0cca10a40Phil Goodwin    }
791741463ed4618ec2b72cbd7764649fd0cca10a40Phil Goodwin
80e7a41c9b39233781c97dd599ff61024f0510e308Christian Williams    public static void bindShadowClass(Class<?> shadowClass) {
81111e2299b5157f072d9e62406bd3c6fea9036cd4Christian Williams & Phil Goodwin        RobolectricInternals.bindShadowClass(shadowClass);
82e7a41c9b39233781c97dd599ff61024f0510e308Christian Williams    }
83e7a41c9b39233781c97dd599ff61024f0510e308Christian Williams
84e7a41c9b39233781c97dd599ff61024f0510e308Christian Williams    public static void bindDefaultShadowClasses() {
85638a930898ff7ff4d62b8a3028439142af65e4b4Christian Williams        bindShadowClasses(getDefaultShadowClasses());
86638a930898ff7ff4d62b8a3028439142af65e4b4Christian Williams    }
87638a930898ff7ff4d62b8a3028439142af65e4b4Christian Williams
88638a930898ff7ff4d62b8a3028439142af65e4b4Christian Williams    public static void bindShadowClasses(List<Class<?>> shadowClasses) {
89638a930898ff7ff4d62b8a3028439142af65e4b4Christian Williams        for (Class<?> shadowClass : shadowClasses) {
90638a930898ff7ff4d62b8a3028439142af65e4b4Christian Williams            bindShadowClass(shadowClass);
91e7a41c9b39233781c97dd599ff61024f0510e308Christian Williams        }
92e7a41c9b39233781c97dd599ff61024f0510e308Christian Williams    }
93e7a41c9b39233781c97dd599ff61024f0510e308Christian Williams
94cedd6ea60db4bf5744077021f20092005bb3d461Tyler Schultz    /**
95cedd6ea60db4bf5744077021f20092005bb3d461Tyler Schultz     * Invoke this utility method in tests to reveal which Android api classes and methods are being invoked
96cedd6ea60db4bf5744077021f20092005bb3d461Tyler Schultz     * for which there are no shadows or shadow methods. This helps expose which methods are being invoked
97cedd6ea60db4bf5744077021f20092005bb3d461Tyler Schultz     * either by a third party library or application code which need new shadow methods to be written. Generates
98cedd6ea60db4bf5744077021f20092005bb3d461Tyler Schultz     * output for the current test only.
99cedd6ea60db4bf5744077021f20092005bb3d461Tyler Schultz     */
100cedd6ea60db4bf5744077021f20092005bb3d461Tyler Schultz    public static void logMissingInvokedShadowMethods() {
101cedd6ea60db4bf5744077021f20092005bb3d461Tyler Schultz        ShadowWrangler.getInstance().logMissingInvokedShadowMethods();
102cedd6ea60db4bf5744077021f20092005bb3d461Tyler Schultz    }
103cedd6ea60db4bf5744077021f20092005bb3d461Tyler Schultz
104e7a41c9b39233781c97dd599ff61024f0510e308Christian Williams    public static List<Class<?>> getDefaultShadowClasses() {
1050b378afcde0200166e546c46a7642015accfce49Christian Williams & Ian Fisher        return Arrays.asList(
106c146ad8871a32bbf62aca259ede77d3f9cd07773Tyler Schultz                ShadowAbsoluteLayout.class,
1076bdff425fce6705103662f20370c9b371ccf23adRich Humphrey                ShadowAbsSeekBar.class,
108c5e7ea096261d2e0220a763119aeb58fab47de2eMike Grafton & Tyler Schultz                ShadowActivityGroup.class,
109afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowAbsSpinner.class,
1109893f7266e7dcc1332743887045bd69991441421Christian Williams                ShadowAbstractCursor.class,
111afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowActivity.class,
112f68d6a67f035c4bde0c95dcf6c3aa2d68a436972Michael Portuesi                ShadowActivityManager.class,
113afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowAdapterView.class,
114afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowAddress.class,
115cf37f66c9bcbf0b25b879fbb78c9442c9101c7acRich Humphrey                ShadowAlarmManager.class,
116afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowAlertDialog.class,
117afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowAlertDialog.ShadowBuilder.class,
1183f78da998ce73c1c7c25798a7e7e4f19287eff23Michael Portuesi                ShadowAnimation.class,
11986b7c8791d1e5bff8403ec7fe6b8bdf7b5e05bf9Zoodles                ShadowAnimationUtils.class,
120afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowApplication.class,
121afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowAppWidgetManager.class,
122e9c420439254fc0c893e44987db10e1418fff338mylacc                ShadowArrayAdapter.class,
123114296321cba71f8133713306049ce3b411e8563Gonçalo Silva                ShadowAssetManager.class,
12471d7c3bcf0400e4b81109dd785187e1a93da3cabChristian Williams                ShadowAsyncTask.class,
12536a56b1b82e6409c81ccc87ab7148cef105b4517Michael Portuesi                ShadowAudioManager.class,
126afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowBaseAdapter.class,
127ae26238c7d01caef84ceddd8ffb42c32306918d6Josh Lauer & Christian Williams                ShadowBitmap.class,
128afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowBitmapDrawable.class,
129b01474a3329222965d31068f5c33e59c6e6aa6a4Josh Lauer & Christian Williams                ShadowBitmapFactory.class,
130b01474a3329222965d31068f5c33e59c6e6aa6a4Josh Lauer & Christian Williams                ShadowBluetoothAdapter.class,
131b01474a3329222965d31068f5c33e59c6e6aa6a4Josh Lauer & Christian Williams                ShadowBluetoothDevice.class,
13275d564ab2b02cbe8a0d8cb33779530f72ea813abChristian Williams & Ryan Richard                ShadowBundle.class,
13331af8607e2c7da6ba8708f57c4b67b6b4aaad921Michael Portuesi                ShadowCamera.class,
13431af8607e2c7da6ba8708f57c4b67b6b4aaad921Michael Portuesi                ShadowCameraParameters.class,
135cf37f66c9bcbf0b25b879fbb78c9442c9101c7acRich Humphrey                ShadowCameraSize.class,
136afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowCanvas.class,
137a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz                ShadowColorDrawable.class,
138e3bf0c0e84dd3464de0a508f9c03512d23c11bd8Josh Lauer & Christian Williams                ShadowColorMatrix.class,
139e3bf0c0e84dd3464de0a508f9c03512d23c11bd8Josh Lauer & Christian Williams                ShadowColorMatrixColorFilter.class,
140b613c76c40bffb15fbde84df32365bde3ffdb4c5Christian Williams                ShadowColorStateList.class,
141afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowComponentName.class,
142cf37f66c9bcbf0b25b879fbb78c9442c9101c7acRich Humphrey                ShadowCompoundButton.class,
143cf37f66c9bcbf0b25b879fbb78c9442c9101c7acRich Humphrey                ShadowConfiguration.class,
1447581f8ab1d3fb2950ae13fc09a9b1862d1ec3af1Macarse                ShadowConnectivityManager.class,
14520b94927aff24d7bd975d6ee717f1b65da9ee7c1Josh Lauer & Christian Williams                ShadowContentResolver.class,
1469893f7266e7dcc1332743887045bd69991441421Christian Williams                ShadowContentValues.class,
147afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowContext.class,
148afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowContextWrapper.class,
1491dcccba609fb2036994803ca6d71f9c76e1fe8e9Chee Wong                ShadowContextThemeWrapper.class,
150b613c76c40bffb15fbde84df32365bde3ffdb4c5Christian Williams                ShadowCookieManager.class,
15132fa4fc29ce30047ce5c3c00e3eea5cf1c27b056adriancowham                ShadowCookieSyncManager.class,
152c97f858ddc2222e96a6492c5fba30775cfeac4e4Zoodles                ShadowCountDownTimer.class,
1530dabe713bf2d78df246d9cff18ed11363491a2acAdam Cohen-Rose                ShadowCursorAdapter.class,
1548bdd4405f79972e8c153562e96afa912f3fe81c8Graeme Duncan                ShadowDateFormat.class,
155cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz                ShadowDefaultRequestDirector.class,
156d1eee6c4ec28a6c17455ce5c29efb833f30dd5d0Michael Portuesi                ShadowDisplay.class,
157afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowDrawable.class,
158afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowDialog.class,
15994c593173ef0ac64cca724199d6228057e1c8fd8Rich Humphrey                ShadowDialogPreference.class,
160afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowEditText.class,
1619044c45523b0b9da7cfc8e0cc8c5ecf5d3085ee0Cristian                ShadowExpandableListView.class,
162d4e5d32b81cae2114f66739beaac6fe1ceeead0dJosh Lauer & Christian Williams                ShadowFloatMath.class,
163b8898598e493d4df40038a501ff77f2aa437e9efMike Grafton & Tyler Schultz                ShadowFrameLayout.class,
16406abdc35948a13a609c6e6c972d6fa19603b7fe9Joe Moore & Ryan Richard                ShadowGeocoder.class,
165afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowGeoPoint.class,
1665be5c864634de9072b89911eab6d0c8d772c9ad3Rich Humphrey                ShadowGridView.class,
167afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowHandler.class,
168afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowImageView.class,
169f02412fe85c5ff4a011793b408fb33bafb122340Rich Humphrey                ShadowInputMethodManager.class,
170afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowIntent.class,
171270250ac4b8bdaa50c8a44998229eb260f5c075cGlenn Jahnke & Phil Goodwin                ShadowIntent.class,
172afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowIntentFilter.class,
173afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowItemizedOverlay.class,
17408fb8f8709b227d9c12f5197c1884f22137075a5adriancowham                ShadowKeyguardManager.class,
175afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowLayoutInflater.class,
176afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowLayoutParams.class,
177afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowListActivity.class,
178db942f0867e5e1f3bc97eb8facf686bdbca7c20aRich Humphrey                ShadowListPreference.class,
179afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowListView.class,
180afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowLocation.class,
181afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowLocationManager.class,
182afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowLooper.class,
183afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowMapController.class,
184afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowMapActivity.class,
185afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowMapView.class,
1860d21afe8a769457a7c6691bd8418a73aafb46beaJosh Lauer & Christian Williams                ShadowMatrix.class,
1875480630a30500f34f6e03ed218d80f5ad843ed87Rich Humphrey                ShadowMediaPlayer.class,
18876209fe88929d880ac6e008d5a3e6e1e1dd4939aPhil Goodwin                ShadowMediaRecorder.class,
189d3f9a56dffcdd129355351019aef9652cce0d6b2Josh Lauer & Christian Williams                ShadowMediaStore.ShadowImages.ShadowMedia.class,
19076209fe88929d880ac6e008d5a3e6e1e1dd4939aPhil Goodwin                ShadowMenuInflater.class,
191afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowMotionEvent.class,
19207a3254138fdfe62b70c194b458879c51bea72b4Phil Goodwin                ShadowNotification.class,
19307a3254138fdfe62b70c194b458879c51bea72b4Phil Goodwin                ShadowNotificationManager.class,
1947581f8ab1d3fb2950ae13fc09a9b1862d1ec3af1Macarse                ShadowNetworkInfo.class,
195afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowOverlayItem.class,
196afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowPaint.class,
1972ed797adb849f96d26ffaae31d68a2a67f56f27bJan Berkel                ShadowPair.class,
198cb6dcc93e483e0537f8c93595bb6687b392a0d2eadriancowham                ShadowParcel.class,
199afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowPath.class,
200afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowPendingIntent.class,
201afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowPoint.class,
202d4e5d32b81cae2114f66739beaac6fe1ceeead0dJosh Lauer & Christian Williams                ShadowPointF.class,
203b613c76c40bffb15fbde84df32365bde3ffdb4c5Christian Williams                ShadowPowerManager.class,
204079a071612e45353e46bde2f29eff7e6fc762f01Rich Humphrey                ShadowPreference.class,
205eb47a8c4f989358eb087720918ff77a8e1e6f260Rich Humphrey                ShadowPreferenceActivity.class,
206eb47a8c4f989358eb087720918ff77a8e1e6f260Rich Humphrey                ShadowPreferenceCategory.class,
207eb47a8c4f989358eb087720918ff77a8e1e6f260Rich Humphrey                ShadowPreferenceGroup.class,
208e8637c922e4f8e681769d63689accb89e6108056Michael Portuesi                ShadowPreferenceManager.class,
209860f8c39f4b14a23d103310d523c7855d40b8f58Rich Humphrey                ShadowPreferenceScreen.class,
210079a071612e45353e46bde2f29eff7e6fc762f01Rich Humphrey                ShadowProgressBar.class,
2114ba5e84ecdbe474b0f5a55f19f1b2af49fbbe822Rich Humphrey                ShadowProgressDialog.class,
212c5e7ea096261d2e0220a763119aeb58fab47de2eMike Grafton & Tyler Schultz                ShadowRatingBar.class,
213afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowRect.class,
2149e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowham                ShadowResolveInfo.class,
215afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowRemoteViews.class,
2160dabe713bf2d78df246d9cff18ed11363491a2acAdam Cohen-Rose                ShadowResourceCursorAdapter.class,
217afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowResources.class,
218b613c76c40bffb15fbde84df32365bde3ffdb4c5Christian Williams                ShadowResources.ShadowTheme.class,
219b82ccb9a3ef511d607ca5c4238a50d78a6aeaebaRich Humphrey                ShadowSeekBar.class,
220afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowService.class,
221afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowSettings.class,
222afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowSettings.ShadowSecure.class,
223afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowSettings.ShadowSystem.class,
2240dabe713bf2d78df246d9cff18ed11363491a2acAdam Cohen-Rose                ShadowSimpleCursorAdapter.class,
225145ab32c7d7c170f2eb4f44660e2ab4c045bc5f1Tim Labeeuw & Tyler Schultz                ShadowShapeDrawable.class,
226afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowSpannableStringBuilder.class,
2279893f7266e7dcc1332743887045bd69991441421Christian Williams                ShadowSQLiteDatabase.class,
228b574da97569d2d098d0aaebbb947bffa8514a4f7Michael Portuesi                ShadowSQLiteCursor.class,
22928dd1fc86f58b35b79e2fedc13f5b26f600a9a6aMichael Portuesi                ShadowSQLiteOpenHelper.class,
2303a99d4817b65b7eb0a9f44486072dbf43fdb2144Michael Portuesi                ShadowSQLiteQueryBuilder.class,
231c1a22de534a98808eb2ce5c6c956e25c0d9625e2Rich Humphrey                ShadowSslErrorHandler.class,
2327dc1a70de2b28bdf70d887accfb5805f3497bda8Josh Lauer & Christian Williams                ShadowSurfaceView.class,
233b8898598e493d4df40038a501ff77f2aa437e9efMike Grafton & Tyler Schultz                ShadowTabHost.class,
234b8898598e493d4df40038a501ff77f2aa437e9efMike Grafton & Tyler Schultz                ShadowTabSpec.class,
235c59af8991708feeca9cdfb028101113a79ef73f4Glenn Jahnke & Lenny Turetsky                ShadowTelephonyManager.class,
236afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowTextUtils.class,
237afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowTextView.class,
238afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowToast.class,
239b613c76c40bffb15fbde84df32365bde3ffdb4c5Christian Williams                ShadowTypedArray.class,
240afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowTypedValue.class,
241237888bb1e926aea523388de5d511a35f38506efPhil Goodwin & Tyler Schultz                ShadowURLSpan.class,
2422afd69b7f52c3c4c1fbe17f46e84d0cb178d3adeKathy Lin                ShadowVideoView.class,
243afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowView.class,
244afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowViewGroup.class,
2450e1c92ca35030e2c173b141c41341636bbb7a258Christian Williams                ShadowViewStub.class,
2460189062c055157592d5aa6ef59b26fae6f91dea4Rich Humphrey                ShadowWebSettings.class,
2479ef88bf39bff29cb39dee4d84542c8f5a6178748Tyler Schultz                ShadowWebView.class,
248afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowWifiManager.class,
249e2f97afa26ab916fbc36ca1bbf18ba507023ab50Christian Williams                ShadowWindow.class,
250afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowZoomButtonsController.class
251adfaceabbda4c8c51f24a0def8926075bd7306adChristian Williams        );
2520b378afcde0200166e546c46a7642015accfce49Christian Williams & Ian Fisher    }
25390008046fcb6aac20be2df7a0aa07129f6f0d62bIan Fisher
254345fb6b77303f0d3c98cf748fefa0136183bdc79Christian Williams    public static void resetStaticState() {
255e6dfaf271dbaf3ac1bb82d953669a56a02fc71d6Phil Goodwin & Tyler Schultz        ShadowWrangler.getInstance().silence();
256345fb6b77303f0d3c98cf748fefa0136183bdc79Christian Williams        Robolectric.application = new Application();
257d092cebc8c9179d3a138827fd65961b867e2c53fJosh Lauer & Christian Williams        ShadowBitmapFactory.reset();
25890008046fcb6aac20be2df7a0aa07129f6f0d62bIan Fisher    }
2591fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
2609122a05312e767618ba0545a951df9cab86c8716Christian Williams    public static <T> T directlyOn(T shadowedObject) {
2619122a05312e767618ba0545a951df9cab86c8716Christian Williams        return RobolectricInternals.directlyOn(shadowedObject);
2629122a05312e767618ba0545a951df9cab86c8716Christian Williams    }
2639122a05312e767618ba0545a951df9cab86c8716Christian Williams
26429cbbdc99eee133fd8bccb3084fa3881a9ee1233adriancowham    public static ShadowCursorAdapter shadowOf(CursorAdapter instance) {
26529cbbdc99eee133fd8bccb3084fa3881a9ee1233adriancowham    	return (ShadowCursorAdapter) shadowOf_(instance);
26629cbbdc99eee133fd8bccb3084fa3881a9ee1233adriancowham    }
26729cbbdc99eee133fd8bccb3084fa3881a9ee1233adriancowham
268433b46be67768332f764eab6879e0649993d79e3Christian Williams    public static ShadowDrawable shadowOf(Drawable instance) {
269433b46be67768332f764eab6879e0649993d79e3Christian Williams        return (ShadowDrawable) shadowOf_(instance);
2701fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
2711fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
272433b46be67768332f764eab6879e0649993d79e3Christian Williams    public static ShadowToast shadowOf(Toast instance) {
273433b46be67768332f764eab6879e0649993d79e3Christian Williams        return (ShadowToast) shadowOf_(instance);
2741fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
2751fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
2767581f8ab1d3fb2950ae13fc09a9b1862d1ec3af1Macarse    public static ShadowNetworkInfo shadowOf(NetworkInfo instance) {
2777581f8ab1d3fb2950ae13fc09a9b1862d1ec3af1Macarse        return (ShadowNetworkInfo) shadowOf_(instance);
2787581f8ab1d3fb2950ae13fc09a9b1862d1ec3af1Macarse    }
2797581f8ab1d3fb2950ae13fc09a9b1862d1ec3af1Macarse
2807581f8ab1d3fb2950ae13fc09a9b1862d1ec3af1Macarse    public static ShadowConnectivityManager shadowOf(ConnectivityManager instance) {
2817581f8ab1d3fb2950ae13fc09a9b1862d1ec3af1Macarse        return (ShadowConnectivityManager) shadowOf_(instance);
2827581f8ab1d3fb2950ae13fc09a9b1862d1ec3af1Macarse    }
2837581f8ab1d3fb2950ae13fc09a9b1862d1ec3af1Macarse
284523401082f8da71727f102003baf023e6c356386adriancowham    public static ShadowWifiManager shadowOf(WifiManager instance){
285523401082f8da71727f102003baf023e6c356386adriancowham    	return (ShadowWifiManager) shadowOf_(instance);
286523401082f8da71727f102003baf023e6c356386adriancowham    }
287523401082f8da71727f102003baf023e6c356386adriancowham
288433b46be67768332f764eab6879e0649993d79e3Christian Williams    public static ShadowBitmapDrawable shadowOf(BitmapDrawable instance) {
289433b46be67768332f764eab6879e0649993d79e3Christian Williams        return (ShadowBitmapDrawable) shadowOf_(instance);
2901fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
2911fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
292433b46be67768332f764eab6879e0649993d79e3Christian Williams    public static ShadowZoomButtonsController shadowOf(ZoomButtonsController instance) {
293433b46be67768332f764eab6879e0649993d79e3Christian Williams        return (ShadowZoomButtonsController) shadowOf_(instance);
2941fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
2951fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
296433b46be67768332f764eab6879e0649993d79e3Christian Williams    public static ShadowListView shadowOf(ListView instance) {
297433b46be67768332f764eab6879e0649993d79e3Christian Williams        return (ShadowListView) shadowOf_(instance);
2981fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
2991fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
300cb122d30b23483c2cec905e74c747e6bc448cfbaPhil Goodwin    public static ShadowExpandableListView shadowOf(ExpandableListView instance) {
301cb122d30b23483c2cec905e74c747e6bc448cfbaPhil Goodwin        return (ShadowExpandableListView) shadowOf_(instance);
3029044c45523b0b9da7cfc8e0cc8c5ecf5d3085ee0Cristian    }
3039044c45523b0b9da7cfc8e0cc8c5ecf5d3085ee0Cristian
304433b46be67768332f764eab6879e0649993d79e3Christian Williams    public static ShadowActivity shadowOf(Activity instance) {
305433b46be67768332f764eab6879e0649993d79e3Christian Williams        return (ShadowActivity) shadowOf_(instance);
3061fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
3071fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
308433b46be67768332f764eab6879e0649993d79e3Christian Williams    public static ShadowContextWrapper shadowOf(ContextWrapper instance) {
309433b46be67768332f764eab6879e0649993d79e3Christian Williams        return (ShadowContextWrapper) shadowOf_(instance);
3101fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
3111fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
312f91a118112ae13d39251dd3c09f1d85d33283ba1Christian Williams & Phil Goodwin    public static ShadowApplication shadowOf(Application instance) {
313f91a118112ae13d39251dd3c09f1d85d33283ba1Christian Williams & Phil Goodwin        return (ShadowApplication) shadowOf_(instance);
314f91a118112ae13d39251dd3c09f1d85d33283ba1Christian Williams & Phil Goodwin    }
315f26a90f66bc715bac5510479ea659224d49cc39dRich Humphrey
316f26a90f66bc715bac5510479ea659224d49cc39dRich Humphrey    public static ShadowService shadowOf(Service instance) {
317f26a90f66bc715bac5510479ea659224d49cc39dRich Humphrey        return (ShadowService) shadowOf_(instance);
318f26a90f66bc715bac5510479ea659224d49cc39dRich Humphrey    }
31908f79939304d82b7cfbb80d20b88fbe26eeab7a9Joe Moore and Tyler Schultz
320f91a118112ae13d39251dd3c09f1d85d33283ba1Christian Williams & Phil Goodwin    public static ShadowContext shadowOf(Context instance) {
321f91a118112ae13d39251dd3c09f1d85d33283ba1Christian Williams & Phil Goodwin        return (ShadowContext) shadowOf_(instance);
3221fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
3231fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
32432fa4fc29ce30047ce5c3c00e3eea5cf1c27b056adriancowham    public static ShadowCookieSyncManager shadowOf( CookieSyncManager instance ) {
32532fa4fc29ce30047ce5c3c00e3eea5cf1c27b056adriancowham        return (ShadowCookieSyncManager) shadowOf_(instance);
32632fa4fc29ce30047ce5c3c00e3eea5cf1c27b056adriancowham    }
32732fa4fc29ce30047ce5c3c00e3eea5cf1c27b056adriancowham
328433b46be67768332f764eab6879e0649993d79e3Christian Williams    public static ShadowPaint shadowOf(Paint instance) {
329433b46be67768332f764eab6879e0649993d79e3Christian Williams        return (ShadowPaint) shadowOf_(instance);
3301fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
3311fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
332433b46be67768332f764eab6879e0649993d79e3Christian Williams    public static ShadowPath shadowOf(Path instance) {
333433b46be67768332f764eab6879e0649993d79e3Christian Williams        return (ShadowPath) shadowOf_(instance);
3341fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
3351fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
336079a071612e45353e46bde2f29eff7e6fc762f01Rich Humphrey    public static ShadowPreference shadowOf(Preference instance) {
337079a071612e45353e46bde2f29eff7e6fc762f01Rich Humphrey        return (ShadowPreference) shadowOf_(instance);
338079a071612e45353e46bde2f29eff7e6fc762f01Rich Humphrey    }
339eb47a8c4f989358eb087720918ff77a8e1e6f260Rich Humphrey
340eb47a8c4f989358eb087720918ff77a8e1e6f260Rich Humphrey    public static ShadowPreferenceActivity shadowOf(PreferenceActivity instance) {
341eb47a8c4f989358eb087720918ff77a8e1e6f260Rich Humphrey        return (ShadowPreferenceActivity) shadowOf_(instance);
342eb47a8c4f989358eb087720918ff77a8e1e6f260Rich Humphrey    }
343eb47a8c4f989358eb087720918ff77a8e1e6f260Rich Humphrey
344eb47a8c4f989358eb087720918ff77a8e1e6f260Rich Humphrey    public static ShadowPreferenceCategory shadowOf(PreferenceCategory instance) {
345eb47a8c4f989358eb087720918ff77a8e1e6f260Rich Humphrey        return (ShadowPreferenceCategory) shadowOf_(instance);
346eb47a8c4f989358eb087720918ff77a8e1e6f260Rich Humphrey    }
347eb47a8c4f989358eb087720918ff77a8e1e6f260Rich Humphrey
348eb47a8c4f989358eb087720918ff77a8e1e6f260Rich Humphrey    public static ShadowPreferenceGroup shadowOf(PreferenceGroup instance) {
349eb47a8c4f989358eb087720918ff77a8e1e6f260Rich Humphrey        return (ShadowPreferenceGroup) shadowOf_(instance);
350eb47a8c4f989358eb087720918ff77a8e1e6f260Rich Humphrey    }
351079a071612e45353e46bde2f29eff7e6fc762f01Rich Humphrey
352860f8c39f4b14a23d103310d523c7855d40b8f58Rich Humphrey    public static ShadowPreferenceScreen shadowOf(PreferenceScreen instance) {
353860f8c39f4b14a23d103310d523c7855d40b8f58Rich Humphrey        return (ShadowPreferenceScreen) shadowOf_(instance);
354860f8c39f4b14a23d103310d523c7855d40b8f58Rich Humphrey    }
355079a071612e45353e46bde2f29eff7e6fc762f01Rich Humphrey
356079a071612e45353e46bde2f29eff7e6fc762f01Rich Humphrey    public static ShadowProgressBar shadowOf(ProgressBar instance) {
357079a071612e45353e46bde2f29eff7e6fc762f01Rich Humphrey        return (ShadowProgressBar) shadowOf_(instance);
358079a071612e45353e46bde2f29eff7e6fc762f01Rich Humphrey    }
359079a071612e45353e46bde2f29eff7e6fc762f01Rich Humphrey
3604ba5e84ecdbe474b0f5a55f19f1b2af49fbbe822Rich Humphrey    public static ShadowProgressDialog shadowOf(ProgressDialog instance) {
3614ba5e84ecdbe474b0f5a55f19f1b2af49fbbe822Rich Humphrey        return (ShadowProgressDialog) shadowOf_(instance);
3624ba5e84ecdbe474b0f5a55f19f1b2af49fbbe822Rich Humphrey    }
3634ba5e84ecdbe474b0f5a55f19f1b2af49fbbe822Rich Humphrey
364433b46be67768332f764eab6879e0649993d79e3Christian Williams    public static ShadowListActivity shadowOf(ListActivity instance) {
365433b46be67768332f764eab6879e0649993d79e3Christian Williams        return (ShadowListActivity) shadowOf_(instance);
3661fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
3671fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
368c5e7ea096261d2e0220a763119aeb58fab47de2eMike Grafton & Tyler Schultz    public static ShadowActivityGroup shadowOf(ActivityGroup instance) {
369c5e7ea096261d2e0220a763119aeb58fab47de2eMike Grafton & Tyler Schultz        return (ShadowActivityGroup) shadowOf_(instance);
370c5e7ea096261d2e0220a763119aeb58fab47de2eMike Grafton & Tyler Schultz    }
371c5e7ea096261d2e0220a763119aeb58fab47de2eMike Grafton & Tyler Schultz
372db942f0867e5e1f3bc97eb8facf686bdbca7c20aRich Humphrey    public static ShadowListPreference shadowOf(ListPreference instance) {
373db942f0867e5e1f3bc97eb8facf686bdbca7c20aRich Humphrey        return (ShadowListPreference) shadowOf_(instance);
374db942f0867e5e1f3bc97eb8facf686bdbca7c20aRich Humphrey    }
375db942f0867e5e1f3bc97eb8facf686bdbca7c20aRich Humphrey
376433b46be67768332f764eab6879e0649993d79e3Christian Williams    public static ShadowHandler shadowOf(Handler instance) {
377433b46be67768332f764eab6879e0649993d79e3Christian Williams        return (ShadowHandler) shadowOf_(instance);
3781fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
3791fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
380145ab32c7d7c170f2eb4f44660e2ab4c045bc5f1Tim Labeeuw & Tyler Schultz    public static ShadowShapeDrawable shadowOf(ShapeDrawable instance) {
381145ab32c7d7c170f2eb4f44660e2ab4c045bc5f1Tim Labeeuw & Tyler Schultz        return (ShadowShapeDrawable) shadowOf_(instance);
382145ab32c7d7c170f2eb4f44660e2ab4c045bc5f1Tim Labeeuw & Tyler Schultz    }
383145ab32c7d7c170f2eb4f44660e2ab4c045bc5f1Tim Labeeuw & Tyler Schultz
384c1a22de534a98808eb2ce5c6c956e25c0d9625e2Rich Humphrey    public static ShadowSslErrorHandler shadowOf(SslErrorHandler instance) {
385c1a22de534a98808eb2ce5c6c956e25c0d9625e2Rich Humphrey        return (ShadowSslErrorHandler) shadowOf_(instance);
386c1a22de534a98808eb2ce5c6c956e25c0d9625e2Rich Humphrey    }
3871fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
388e3bf0c0e84dd3464de0a508f9c03512d23c11bd8Josh Lauer & Christian Williams    public static ShadowColorMatrix shadowOf(ColorMatrix instance) {
389e3bf0c0e84dd3464de0a508f9c03512d23c11bd8Josh Lauer & Christian Williams        return (ShadowColorMatrix) shadowOf_(instance);
390e3bf0c0e84dd3464de0a508f9c03512d23c11bd8Josh Lauer & Christian Williams    }
391e3bf0c0e84dd3464de0a508f9c03512d23c11bd8Josh Lauer & Christian Williams
392433b46be67768332f764eab6879e0649993d79e3Christian Williams    public static ShadowIntent shadowOf(Intent instance) {
393433b46be67768332f764eab6879e0649993d79e3Christian Williams        return (ShadowIntent) shadowOf_(instance);
3941fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
3951fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
396433b46be67768332f764eab6879e0649993d79e3Christian Williams    public static ShadowView shadowOf(View instance) {
397433b46be67768332f764eab6879e0649993d79e3Christian Williams        return (ShadowView) shadowOf_(instance);
3981fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
3991fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
400a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz    public static ShadowColorDrawable shadowOf(ColorDrawable instance) {
401a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz        return (ShadowColorDrawable) shadowOf_(instance);
402a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz    }
403a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz
404433b46be67768332f764eab6879e0649993d79e3Christian Williams    public static ShadowViewGroup shadowOf(ViewGroup instance) {
405433b46be67768332f764eab6879e0649993d79e3Christian Williams        return (ShadowViewGroup) shadowOf_(instance);
4061fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
4071fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
4080189062c055157592d5aa6ef59b26fae6f91dea4Rich Humphrey    public static ShadowWebSettings shadowOf(WebSettings instance) {
4090189062c055157592d5aa6ef59b26fae6f91dea4Rich Humphrey        return (ShadowWebSettings) shadowOf_(instance);
4100189062c055157592d5aa6ef59b26fae6f91dea4Rich Humphrey    }
4110189062c055157592d5aa6ef59b26fae6f91dea4Rich Humphrey
4126cf9d6f657e61d727afc221dd157ae6ca41714baTyler Schultz    public static ShadowWebView shadowOf(WebView instance) {
4136cf9d6f657e61d727afc221dd157ae6ca41714baTyler Schultz        return (ShadowWebView) shadowOf_(instance);
4146cf9d6f657e61d727afc221dd157ae6ca41714baTyler Schultz    }
4156cf9d6f657e61d727afc221dd157ae6ca41714baTyler Schultz
416433b46be67768332f764eab6879e0649993d79e3Christian Williams    public static ShadowAdapterView shadowOf(AdapterView instance) {
417433b46be67768332f764eab6879e0649993d79e3Christian Williams        return (ShadowAdapterView) shadowOf_(instance);
4181fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
4191fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
420433b46be67768332f764eab6879e0649993d79e3Christian Williams    public static ShadowTextView shadowOf(TextView instance) {
421433b46be67768332f764eab6879e0649993d79e3Christian Williams        return (ShadowTextView) shadowOf_(instance);
4221fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
4231fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
424433b46be67768332f764eab6879e0649993d79e3Christian Williams    public static ShadowImageView shadowOf(ImageView instance) {
425433b46be67768332f764eab6879e0649993d79e3Christian Williams        return (ShadowImageView) shadowOf_(instance);
4261fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
4271fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
4289e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowham    public static ShadowResolveInfo shadowOf(ResolveInfo instance ) {
4299e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowham    	return (ShadowResolveInfo) shadowOf_(instance);
4309e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowham    }
4319e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowham
432433b46be67768332f764eab6879e0649993d79e3Christian Williams    public static ShadowRemoteViews shadowOf(RemoteViews instance) {
433433b46be67768332f764eab6879e0649993d79e3Christian Williams        return (ShadowRemoteViews) shadowOf_(instance);
4341fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
4351fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
436433b46be67768332f764eab6879e0649993d79e3Christian Williams    public static ShadowDialog shadowOf(Dialog instance) {
437433b46be67768332f764eab6879e0649993d79e3Christian Williams        return (ShadowDialog) shadowOf_(instance);
4381fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
43994c593173ef0ac64cca724199d6228057e1c8fd8Rich Humphrey
44094c593173ef0ac64cca724199d6228057e1c8fd8Rich Humphrey    public static ShadowDialogPreference shadowOf(DialogPreference instance) {
44194c593173ef0ac64cca724199d6228057e1c8fd8Rich Humphrey        return (ShadowDialogPreference) shadowOf_(instance);
44294c593173ef0ac64cca724199d6228057e1c8fd8Rich Humphrey    }
4431fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
444b2fea8dc6ecf427c1e620148946b6fd83a0bd210Phil Goodwin & Tyler Schultz    public static ShadowDefaultRequestDirector shadowOf(DefaultRequestDirector instance) {
445cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz        return (ShadowDefaultRequestDirector) shadowOf_(instance);
446c95377d49257364984344908f301574ebe8d4d9cPhil Goodwin & Tyler Schultz    }
447c95377d49257364984344908f301574ebe8d4d9cPhil Goodwin & Tyler Schultz
448433b46be67768332f764eab6879e0649993d79e3Christian Williams    public static ShadowAlertDialog shadowOf(AlertDialog instance) {
449433b46be67768332f764eab6879e0649993d79e3Christian Williams        return (ShadowAlertDialog) shadowOf_(instance);
4501fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
4511fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
452433b46be67768332f764eab6879e0649993d79e3Christian Williams    public static ShadowLooper shadowOf(Looper instance) {
453433b46be67768332f764eab6879e0649993d79e3Christian Williams        return (ShadowLooper) shadowOf_(instance);
4541fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
4551fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
456433b46be67768332f764eab6879e0649993d79e3Christian Williams    public static ShadowCanvas shadowOf(Canvas instance) {
457433b46be67768332f764eab6879e0649993d79e3Christian Williams        return (ShadowCanvas) shadowOf_(instance);
4581fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
4591fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
460433b46be67768332f764eab6879e0649993d79e3Christian Williams    public static ShadowLocationManager shadowOf(LocationManager instance) {
461433b46be67768332f764eab6879e0649993d79e3Christian Williams        return (ShadowLocationManager) shadowOf_(instance);
4621fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
4631fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
464433b46be67768332f764eab6879e0649993d79e3Christian Williams    public static ShadowAppWidgetManager shadowOf(AppWidgetManager instance) {
465433b46be67768332f764eab6879e0649993d79e3Christian Williams        return (ShadowAppWidgetManager) shadowOf_(instance);
4661fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
4671fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
468433b46be67768332f764eab6879e0649993d79e3Christian Williams    public static ShadowResources shadowOf(Resources instance) {
469433b46be67768332f764eab6879e0649993d79e3Christian Williams        return (ShadowResources) shadowOf_(instance);
4701fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
4711fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
472e7a41c9b39233781c97dd599ff61024f0510e308Christian Williams    public static ShadowLayoutInflater shadowOf(LayoutInflater instance) {
47306abdc35948a13a609c6e6c972d6fa19603b7fe9Joe Moore & Ryan Richard        return (ShadowLayoutInflater) shadowOf_(instance);
474e7a41c9b39233781c97dd599ff61024f0510e308Christian Williams    }
475adfaceabbda4c8c51f24a0def8926075bd7306adChristian Williams
476b539366073ccb47433de7191dbbf519ed4ab2d8fPhil Goodwin    public static ShadowMenuInflater shadowOf(MenuInflater instance) {
477b539366073ccb47433de7191dbbf519ed4ab2d8fPhil Goodwin        return (ShadowMenuInflater) shadowOf_(instance);
478b539366073ccb47433de7191dbbf519ed4ab2d8fPhil Goodwin    }
479b539366073ccb47433de7191dbbf519ed4ab2d8fPhil Goodwin
480adfaceabbda4c8c51f24a0def8926075bd7306adChristian Williams    public static ShadowDisplay shadowOf(Display instance) {
4814a9aa604410e3c8f91158a4caa5700f45a22eb47Christian Williams        return (ShadowDisplay) shadowOf_(instance);
482adfaceabbda4c8c51f24a0def8926075bd7306adChristian Williams    }
483adfaceabbda4c8c51f24a0def8926075bd7306adChristian Williams
484adfaceabbda4c8c51f24a0def8926075bd7306adChristian Williams    public static ShadowAudioManager shadowOf(AudioManager instance) {
4854a9aa604410e3c8f91158a4caa5700f45a22eb47Christian Williams        return (ShadowAudioManager) shadowOf_(instance);
4864a9aa604410e3c8f91158a4caa5700f45a22eb47Christian Williams    }
487e7a41c9b39233781c97dd599ff61024f0510e308Christian Williams
48806abdc35948a13a609c6e6c972d6fa19603b7fe9Joe Moore & Ryan Richard    public static ShadowGeocoder shadowOf(Geocoder instance) {
48906abdc35948a13a609c6e6c972d6fa19603b7fe9Joe Moore & Ryan Richard        return (ShadowGeocoder) shadowOf_(instance);
490adfaceabbda4c8c51f24a0def8926075bd7306adChristian Williams    }
491e7a41c9b39233781c97dd599ff61024f0510e308Christian Williams
4929893f7266e7dcc1332743887045bd69991441421Christian Williams    public static ShadowSQLiteDatabase shadowOf(SQLiteDatabase other) {
4939893f7266e7dcc1332743887045bd69991441421Christian Williams        return (ShadowSQLiteDatabase) Robolectric.shadowOf_(other);
4949893f7266e7dcc1332743887045bd69991441421Christian Williams    }
495f96b9a1f17d47e48d1f5f8e29b4ed7ffccc739abPhil Goodwin & Tyler Schultz
496b574da97569d2d098d0aaebbb947bffa8514a4f7Michael Portuesi    public static ShadowSQLiteCursor shadowOf(SQLiteCursor other) {
497b574da97569d2d098d0aaebbb947bffa8514a4f7Michael Portuesi        return (ShadowSQLiteCursor) Robolectric.shadowOf_(other);
498b574da97569d2d098d0aaebbb947bffa8514a4f7Michael Portuesi    }
4999893f7266e7dcc1332743887045bd69991441421Christian Williams
50028dd1fc86f58b35b79e2fedc13f5b26f600a9a6aMichael Portuesi    public static ShadowSQLiteOpenHelper shadowOf(SQLiteOpenHelper other) {
50128dd1fc86f58b35b79e2fedc13f5b26f600a9a6aMichael Portuesi        return (ShadowSQLiteOpenHelper) Robolectric.shadowOf_(other);
50228dd1fc86f58b35b79e2fedc13f5b26f600a9a6aMichael Portuesi    }
503f96b9a1f17d47e48d1f5f8e29b4ed7ffccc739abPhil Goodwin & Tyler Schultz
5043a99d4817b65b7eb0a9f44486072dbf43fdb2144Michael Portuesi    public static ShadowSQLiteQueryBuilder shadowOf(SQLiteQueryBuilder other) {
5053a99d4817b65b7eb0a9f44486072dbf43fdb2144Michael Portuesi        return (ShadowSQLiteQueryBuilder) Robolectric.shadowOf_(other);
5063a99d4817b65b7eb0a9f44486072dbf43fdb2144Michael Portuesi    }
507f96b9a1f17d47e48d1f5f8e29b4ed7ffccc739abPhil Goodwin & Tyler Schultz
5089893f7266e7dcc1332743887045bd69991441421Christian Williams    public static ShadowContentValues shadowOf(ContentValues other) {
5099893f7266e7dcc1332743887045bd69991441421Christian Williams        return (ShadowContentValues) Robolectric.shadowOf_(other);
5109893f7266e7dcc1332743887045bd69991441421Christian Williams    }
5119893f7266e7dcc1332743887045bd69991441421Christian Williams
51231af8607e2c7da6ba8708f57c4b67b6b4aaad921Michael Portuesi    public static ShadowCamera shadowOf(Camera instance) {
51331af8607e2c7da6ba8708f57c4b67b6b4aaad921Michael Portuesi        return (ShadowCamera) shadowOf_(instance);
51431af8607e2c7da6ba8708f57c4b67b6b4aaad921Michael Portuesi    }
515f96b9a1f17d47e48d1f5f8e29b4ed7ffccc739abPhil Goodwin & Tyler Schultz
51631af8607e2c7da6ba8708f57c4b67b6b4aaad921Michael Portuesi    public static ShadowCameraParameters shadowOf(Camera.Parameters instance) {
51731af8607e2c7da6ba8708f57c4b67b6b4aaad921Michael Portuesi        return (ShadowCameraParameters) shadowOf_(instance);
51831af8607e2c7da6ba8708f57c4b67b6b4aaad921Michael Portuesi    }
5199893f7266e7dcc1332743887045bd69991441421Christian Williams
520cf37f66c9bcbf0b25b879fbb78c9442c9101c7acRich Humphrey    public static ShadowCameraSize shadowOf(Camera.Size instance) {
521cf37f66c9bcbf0b25b879fbb78c9442c9101c7acRich Humphrey        return (ShadowCameraSize) shadowOf_(instance);
522cf37f66c9bcbf0b25b879fbb78c9442c9101c7acRich Humphrey    }
52340c6251719cccc0a84ae99c976d2836b14374ce6Christian Williams
5245480630a30500f34f6e03ed218d80f5ad843ed87Rich Humphrey    public static ShadowMediaPlayer shadowOf(MediaPlayer instance) {
5255480630a30500f34f6e03ed218d80f5ad843ed87Rich Humphrey        return (ShadowMediaPlayer) shadowOf_(instance);
5265480630a30500f34f6e03ed218d80f5ad843ed87Rich Humphrey    }
5275480630a30500f34f6e03ed218d80f5ad843ed87Rich Humphrey
52831af8607e2c7da6ba8708f57c4b67b6b4aaad921Michael Portuesi    public static ShadowMediaRecorder shadowOf(MediaRecorder instance) {
52931af8607e2c7da6ba8708f57c4b67b6b4aaad921Michael Portuesi        return (ShadowMediaRecorder) shadowOf_(instance);
53031af8607e2c7da6ba8708f57c4b67b6b4aaad921Michael Portuesi    }
531f96b9a1f17d47e48d1f5f8e29b4ed7ffccc739abPhil Goodwin & Tyler Schultz
53224f155944b10583afd970905e5dbe0acdfc9e0efPhil Goodwin & Tyler Schultz    public static ShadowAssetManager shadowOf(AssetManager instance) {
53324f155944b10583afd970905e5dbe0acdfc9e0efPhil Goodwin & Tyler Schultz        return (ShadowAssetManager) Robolectric.shadowOf_(instance);
53424f155944b10583afd970905e5dbe0acdfc9e0efPhil Goodwin & Tyler Schultz    }
53524f155944b10583afd970905e5dbe0acdfc9e0efPhil Goodwin & Tyler Schultz
536cf37f66c9bcbf0b25b879fbb78c9442c9101c7acRich Humphrey    public static ShadowAlarmManager shadowOf(AlarmManager instance) {
537cf37f66c9bcbf0b25b879fbb78c9442c9101c7acRich Humphrey        return (ShadowAlarmManager) Robolectric.shadowOf_(instance);
538cf37f66c9bcbf0b25b879fbb78c9442c9101c7acRich Humphrey    }
539cf37f66c9bcbf0b25b879fbb78c9442c9101c7acRich Humphrey
54040c6251719cccc0a84ae99c976d2836b14374ce6Christian Williams    public static ShadowConfiguration shadowOf(Configuration instance) {
54140c6251719cccc0a84ae99c976d2836b14374ce6Christian Williams        return (ShadowConfiguration) Robolectric.shadowOf_(instance);
542cf37f66c9bcbf0b25b879fbb78c9442c9101c7acRich Humphrey    }
543cf37f66c9bcbf0b25b879fbb78c9442c9101c7acRich Humphrey
544c97f858ddc2222e96a6492c5fba30775cfeac4e4Zoodles    public static ShadowCountDownTimer shadowOf(CountDownTimer instance) {
545c97f858ddc2222e96a6492c5fba30775cfeac4e4Zoodles        return (ShadowCountDownTimer) Robolectric.shadowOf_(instance);
546c97f858ddc2222e96a6492c5fba30775cfeac4e4Zoodles    }
547c97f858ddc2222e96a6492c5fba30775cfeac4e4Zoodles
548b01474a3329222965d31068f5c33e59c6e6aa6a4Josh Lauer & Christian Williams    public static ShadowBitmap shadowOf(Bitmap other) {
549b01474a3329222965d31068f5c33e59c6e6aa6a4Josh Lauer & Christian Williams        return (ShadowBitmap) Robolectric.shadowOf_(other);
550b01474a3329222965d31068f5c33e59c6e6aa6a4Josh Lauer & Christian Williams    }
551b01474a3329222965d31068f5c33e59c6e6aa6a4Josh Lauer & Christian Williams
552b01474a3329222965d31068f5c33e59c6e6aa6a4Josh Lauer & Christian Williams    public static ShadowBluetoothAdapter shadowOf(BluetoothAdapter other) {
553b01474a3329222965d31068f5c33e59c6e6aa6a4Josh Lauer & Christian Williams        return (ShadowBluetoothAdapter) Robolectric.shadowOf_(other);
554b01474a3329222965d31068f5c33e59c6e6aa6a4Josh Lauer & Christian Williams    }
555b01474a3329222965d31068f5c33e59c6e6aa6a4Josh Lauer & Christian Williams
556b01474a3329222965d31068f5c33e59c6e6aa6a4Josh Lauer & Christian Williams    public static ShadowBluetoothDevice shadowOf(BluetoothDevice other) {
557b01474a3329222965d31068f5c33e59c6e6aa6a4Josh Lauer & Christian Williams        return (ShadowBluetoothDevice) Robolectric.shadowOf_(other);
558b01474a3329222965d31068f5c33e59c6e6aa6a4Josh Lauer & Christian Williams    }
559b01474a3329222965d31068f5c33e59c6e6aa6a4Josh Lauer & Christian Williams
5600d21afe8a769457a7c6691bd8418a73aafb46beaJosh Lauer & Christian Williams    public static ShadowMatrix shadowOf(Matrix other) {
5610d21afe8a769457a7c6691bd8418a73aafb46beaJosh Lauer & Christian Williams        return (ShadowMatrix) Robolectric.shadowOf_(other);
5620d21afe8a769457a7c6691bd8418a73aafb46beaJosh Lauer & Christian Williams    }
5630d21afe8a769457a7c6691bd8418a73aafb46beaJosh Lauer & Christian Williams
564d4e5d32b81cae2114f66739beaac6fe1ceeead0dJosh Lauer & Christian Williams    public static ShadowMotionEvent shadowOf(MotionEvent other) {
565d4e5d32b81cae2114f66739beaac6fe1ceeead0dJosh Lauer & Christian Williams        return (ShadowMotionEvent) Robolectric.shadowOf_(other);
566d4e5d32b81cae2114f66739beaac6fe1ceeead0dJosh Lauer & Christian Williams    }
567d4e5d32b81cae2114f66739beaac6fe1ceeead0dJosh Lauer & Christian Williams
56807a3254138fdfe62b70c194b458879c51bea72b4Phil Goodwin    public static ShadowNotificationManager shadowOf(NotificationManager other) {
56907a3254138fdfe62b70c194b458879c51bea72b4Phil Goodwin        return (ShadowNotificationManager) Robolectric.shadowOf_(other);
57007a3254138fdfe62b70c194b458879c51bea72b4Phil Goodwin    }
57107a3254138fdfe62b70c194b458879c51bea72b4Phil Goodwin
57207a3254138fdfe62b70c194b458879c51bea72b4Phil Goodwin    public static ShadowNotification shadowOf(Notification other) {
57307a3254138fdfe62b70c194b458879c51bea72b4Phil Goodwin        return (ShadowNotification) Robolectric.shadowOf_(other);
57407a3254138fdfe62b70c194b458879c51bea72b4Phil Goodwin    }
57507a3254138fdfe62b70c194b458879c51bea72b4Phil Goodwin
5766bdff425fce6705103662f20370c9b371ccf23adRich Humphrey    public static ShadowAbsSeekBar shadowOf(AbsSeekBar instance) {
5776bdff425fce6705103662f20370c9b371ccf23adRich Humphrey        return (ShadowAbsSeekBar) shadowOf_(instance);
5786bdff425fce6705103662f20370c9b371ccf23adRich Humphrey    }
5796bdff425fce6705103662f20370c9b371ccf23adRich Humphrey
580f87e94db052e8cf78eed7b08de5baa2551f4a134sorack    public static ShadowRatingBar shadowOf(RatingBar instance) {
581f87e94db052e8cf78eed7b08de5baa2551f4a134sorack        return (ShadowRatingBar) shadowOf_(instance);
582f87e94db052e8cf78eed7b08de5baa2551f4a134sorack    }
583f87e94db052e8cf78eed7b08de5baa2551f4a134sorack
584b82ccb9a3ef511d607ca5c4238a50d78a6aeaebaRich Humphrey    public static ShadowSeekBar shadowOf(SeekBar instance) {
585b82ccb9a3ef511d607ca5c4238a50d78a6aeaebaRich Humphrey        return (ShadowSeekBar) shadowOf_(instance);
586b82ccb9a3ef511d607ca5c4238a50d78a6aeaebaRich Humphrey    }
587b82ccb9a3ef511d607ca5c4238a50d78a6aeaebaRich Humphrey
588cb6dcc93e483e0537f8c93595bb6687b392a0d2eadriancowham    public static ShadowParcel shadowOf(Parcel instance) {
589cb6dcc93e483e0537f8c93595bb6687b392a0d2eadriancowham    	return (ShadowParcel) shadowOf_(instance);
590cb6dcc93e483e0537f8c93595bb6687b392a0d2eadriancowham    }
591cb6dcc93e483e0537f8c93595bb6687b392a0d2eadriancowham
59286b7c8791d1e5bff8403ec7fe6b8bdf7b5e05bf9Zoodles    public static ShadowAnimationUtils shadowOf(AnimationUtils instance) {
59386b7c8791d1e5bff8403ec7fe6b8bdf7b5e05bf9Zoodles    	return (ShadowAnimationUtils) shadowOf_(instance);
59486b7c8791d1e5bff8403ec7fe6b8bdf7b5e05bf9Zoodles    }
59586b7c8791d1e5bff8403ec7fe6b8bdf7b5e05bf9Zoodles
59686b7c8791d1e5bff8403ec7fe6b8bdf7b5e05bf9Zoodles    public static ShadowGridView shadowOf(GridView instance) {
59786b7c8791d1e5bff8403ec7fe6b8bdf7b5e05bf9Zoodles    	return (ShadowGridView) shadowOf_(instance);
59886b7c8791d1e5bff8403ec7fe6b8bdf7b5e05bf9Zoodles    }
5994aaebe6f156648e1074f10aadc89f485175c3043Felix H. Dahlke
600b8898598e493d4df40038a501ff77f2aa437e9efMike Grafton & Tyler Schultz    public static ShadowTabHost shadowOf(TabHost instance) {
601b8898598e493d4df40038a501ff77f2aa437e9efMike Grafton & Tyler Schultz    	return (ShadowTabHost) shadowOf_(instance);
602b8898598e493d4df40038a501ff77f2aa437e9efMike Grafton & Tyler Schultz    }
603b8898598e493d4df40038a501ff77f2aa437e9efMike Grafton & Tyler Schultz
604b8898598e493d4df40038a501ff77f2aa437e9efMike Grafton & Tyler Schultz    public static ShadowTabSpec shadowOf(TabHost.TabSpec instance) {
605b8898598e493d4df40038a501ff77f2aa437e9efMike Grafton & Tyler Schultz    	return (ShadowTabSpec) shadowOf_(instance);
606b8898598e493d4df40038a501ff77f2aa437e9efMike Grafton & Tyler Schultz    }
607b8898598e493d4df40038a501ff77f2aa437e9efMike Grafton & Tyler Schultz
608b8898598e493d4df40038a501ff77f2aa437e9efMike Grafton & Tyler Schultz    public static ShadowFrameLayout shadowOf(FrameLayout instance) {
609b8898598e493d4df40038a501ff77f2aa437e9efMike Grafton & Tyler Schultz    	return (ShadowFrameLayout) shadowOf_(instance);
610b8898598e493d4df40038a501ff77f2aa437e9efMike Grafton & Tyler Schultz    }
611b8898598e493d4df40038a501ff77f2aa437e9efMike Grafton & Tyler Schultz
6124aaebe6f156648e1074f10aadc89f485175c3043Felix H. Dahlke    public static ShadowRect shadowOf(Rect instance) {
6134aaebe6f156648e1074f10aadc89f485175c3043Felix H. Dahlke    	return (ShadowRect) shadowOf_(instance);
6144aaebe6f156648e1074f10aadc89f485175c3043Felix H. Dahlke    }
61586b7c8791d1e5bff8403ec7fe6b8bdf7b5e05bf9Zoodles
6168bdd4405f79972e8c153562e96afa912f3fe81c8Graeme Duncan    public static ShadowDateFormat shadowOf(DateFormat instance) {
6178bdd4405f79972e8c153562e96afa912f3fe81c8Graeme Duncan		return (ShadowDateFormat) shadowOf_(instance);
6188bdd4405f79972e8c153562e96afa912f3fe81c8Graeme Duncan	}
619e7a2156a30e8d4f3409f7a2b1d6a5e656423b315Graeme Duncan
6200dabe713bf2d78df246d9cff18ed11363491a2acAdam Cohen-Rose    public static ShadowResourceCursorAdapter shadowOf(ResourceCursorAdapter instance) {
6210dabe713bf2d78df246d9cff18ed11363491a2acAdam Cohen-Rose    	return (ShadowResourceCursorAdapter) shadowOf_(instance);
6220dabe713bf2d78df246d9cff18ed11363491a2acAdam Cohen-Rose    }
6230dabe713bf2d78df246d9cff18ed11363491a2acAdam Cohen-Rose
6240dabe713bf2d78df246d9cff18ed11363491a2acAdam Cohen-Rose    public static ShadowSimpleCursorAdapter shadowOf(SimpleCursorAdapter instance) {
6250dabe713bf2d78df246d9cff18ed11363491a2acAdam Cohen-Rose    	return (ShadowSimpleCursorAdapter) shadowOf_(instance);
6260dabe713bf2d78df246d9cff18ed11363491a2acAdam Cohen-Rose    }
6270dabe713bf2d78df246d9cff18ed11363491a2acAdam Cohen-Rose
62808fb8f8709b227d9c12f5197c1884f22137075a5adriancowham    public static ShadowPowerManager shadowOf(PowerManager instance) {
62908fb8f8709b227d9c12f5197c1884f22137075a5adriancowham    	return (ShadowPowerManager) shadowOf_(instance);
630681269ee2cf6aac7d48bf09f1e449b620f34edf1Graeme Duncan    }
63108fb8f8709b227d9c12f5197c1884f22137075a5adriancowham
63208fb8f8709b227d9c12f5197c1884f22137075a5adriancowham    public static ShadowKeyguardManager shadowOf(KeyguardManager instance) {
63308fb8f8709b227d9c12f5197c1884f22137075a5adriancowham    	return (ShadowKeyguardManager) shadowOf_(instance);
63408fb8f8709b227d9c12f5197c1884f22137075a5adriancowham    }
63508fb8f8709b227d9c12f5197c1884f22137075a5adriancowham
636f02412fe85c5ff4a011793b408fb33bafb122340Rich Humphrey    public static ShadowInputMethodManager shadowOf(InputMethodManager instance) {
637f02412fe85c5ff4a011793b408fb33bafb122340Rich Humphrey    	return (ShadowInputMethodManager) shadowOf_(instance);
638c59af8991708feeca9cdfb028101113a79ef73f4Glenn Jahnke & Lenny Turetsky    }
639681269ee2cf6aac7d48bf09f1e449b620f34edf1Graeme Duncan
640f02412fe85c5ff4a011793b408fb33bafb122340Rich Humphrey   public static ShadowAnimation shadowOf(Animation instance) {
6413f78da998ce73c1c7c25798a7e7e4f19287eff23Michael Portuesi    	return (ShadowAnimation) shadowOf_(instance);
6423f78da998ce73c1c7c25798a7e7e4f19287eff23Michael Portuesi    }
6432afd69b7f52c3c4c1fbe17f46e84d0cb178d3adeKathy Lin
6442afd69b7f52c3c4c1fbe17f46e84d0cb178d3adeKathy Lin   public static ShadowVideoView shadowOf(VideoView instance) {
6452afd69b7f52c3c4c1fbe17f46e84d0cb178d3adeKathy Lin   	return (ShadowVideoView) shadowOf_(instance);
646457cbc096ee926ec89531d445394f8ad9e6672d1Michael Portuesi   }
647457cbc096ee926ec89531d445394f8ad9e6672d1Michael Portuesi
648457cbc096ee926ec89531d445394f8ad9e6672d1Michael Portuesi	public static ShadowTelephonyManager shadowOf(TelephonyManager instance) {
649457cbc096ee926ec89531d445394f8ad9e6672d1Michael Portuesi		return (ShadowTelephonyManager) shadowOf_(instance);
650457cbc096ee926ec89531d445394f8ad9e6672d1Michael Portuesi	}
651f68d6a67f035c4bde0c95dcf6c3aa2d68a436972Michael Portuesi
652f68d6a67f035c4bde0c95dcf6c3aa2d68a436972Michael Portuesi	public static ShadowActivityManager shadowOf(ActivityManager instance) {
653f68d6a67f035c4bde0c95dcf6c3aa2d68a436972Michael Portuesi		return (ShadowActivityManager) shadowOf_(instance);
654f68d6a67f035c4bde0c95dcf6c3aa2d68a436972Michael Portuesi	}
6557598f0c0b1cce3bf1902772ea09139ef98083864Ryan Richard & Tyler Schultz
6561fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    @SuppressWarnings({"unchecked"})
657433b46be67768332f764eab6879e0649993d79e3Christian Williams    public static <P, R> P shadowOf_(R instance) {
658cee7ff89bfcb83d6cd65e6de9b7cafe2c1caf40aChristian Williams        return (P) ShadowWrangler.getInstance().shadowOf(instance);
6591fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
66071d7c3bcf0400e4b81109dd785187e1a93da3cabChristian Williams
6610fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin    /**
6620fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin     * Runs any background tasks previously queued by {@link android.os.AsyncTask#execute(Object[])}.
663b539366073ccb47433de7191dbbf519ed4ab2d8fPhil Goodwin     * <p/>
6640fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin     * <p/>
6650fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin     * Note: calling this method does not pause or un-pause the scheduler.
6660fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin     */
66771d7c3bcf0400e4b81109dd785187e1a93da3cabChristian Williams    public static void runBackgroundTasks() {
6680fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin        getBackgroundScheduler().advanceBy(0);
66971d7c3bcf0400e4b81109dd785187e1a93da3cabChristian Williams    }
67071d7c3bcf0400e4b81109dd785187e1a93da3cabChristian Williams
6710fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin    /**
6720fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin     * Runs any immediately runnable tasks previously queued on the UI thread,
6730fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin     * e.g. by {@link Activity#runOnUiThread(Runnable)} or {@link android.os.AsyncTask#onPostExecute(Object)}.
674b539366073ccb47433de7191dbbf519ed4ab2d8fPhil Goodwin     * <p/>
6750fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin     * <p/>
6760fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin     * Note: calling this method does not pause or un-pause the scheduler.
6770fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin     */
67871d7c3bcf0400e4b81109dd785187e1a93da3cabChristian Williams    public static void runUiThreadTasks() {
679a4f7d50f8e6f12d541421383544fe16c185e4bbcPhil Goodwin & Tyler Schultz        getUiThreadScheduler().advanceBy(0);
68071d7c3bcf0400e4b81109dd785187e1a93da3cabChristian Williams    }
681cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz
682cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz    /**
683bd9537bd36434865d4d25ef332bd388d39a51e34Christian Williams & Phil Goodwin     * Sets up an HTTP response to be returned by calls to Apache's {@code HttpClient} implementers.
684cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz     *
685b539366073ccb47433de7191dbbf519ed4ab2d8fPhil Goodwin     * @param statusCode   the status code of the response
686cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz     * @param responseBody the body of the response
687cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz     */
688b2fea8dc6ecf427c1e620148946b6fd83a0bd210Phil Goodwin & Tyler Schultz    public static void addPendingHttpResponse(int statusCode, String responseBody) {
689f91a118112ae13d39251dd3c09f1d85d33283ba1Christian Williams & Phil Goodwin        getFakeHttpLayer().addPendingHttpResponse(statusCode, responseBody);
690cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz    }
691cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz
692cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz    /**
693bd9537bd36434865d4d25ef332bd388d39a51e34Christian Williams & Phil Goodwin     * Sets up an HTTP response to be returned by calls to Apache's {@code HttpClient} implementers.
694cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz     *
6956f34840c49a26f54f62ead83509e3f64bed7e0cfNeal Sanche     * @param statusCode   the status code of the response
6966f34840c49a26f54f62ead83509e3f64bed7e0cfNeal Sanche     * @param responseBody the body of the response
6976f34840c49a26f54f62ead83509e3f64bed7e0cfNeal Sanche     * @param contentType the contentType of the response
6986f34840c49a26f54f62ead83509e3f64bed7e0cfNeal Sanche     */
69939a416145e85c7008805ef493b2d61f66d669158Tyler Schultz    public static void addPendingHttpResponseWithContentType(int statusCode, String responseBody, Header contentType) {
70039a416145e85c7008805ef493b2d61f66d669158Tyler Schultz        getFakeHttpLayer().addPendingHttpResponseWithContentType(statusCode, responseBody, contentType);
7016f34840c49a26f54f62ead83509e3f64bed7e0cfNeal Sanche    }
7026f34840c49a26f54f62ead83509e3f64bed7e0cfNeal Sanche
7036f34840c49a26f54f62ead83509e3f64bed7e0cfNeal Sanche    /**
7046f34840c49a26f54f62ead83509e3f64bed7e0cfNeal Sanche     * Sets up an HTTP response to be returned by calls to Apache's {@code HttpClient} implementers.
7056f34840c49a26f54f62ead83509e3f64bed7e0cfNeal Sanche     *
706cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz     * @param httpResponse the response
707cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz     */
708b2fea8dc6ecf427c1e620148946b6fd83a0bd210Phil Goodwin & Tyler Schultz    public static void addPendingHttpResponse(HttpResponse httpResponse) {
709f91a118112ae13d39251dd3c09f1d85d33283ba1Christian Williams & Phil Goodwin        getFakeHttpLayer().addPendingHttpResponse(httpResponse);
710cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz    }
711cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz
712cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz    /**
7137cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     * Accessor to obtain HTTP requests made during the current test in the order in which they were made.
714cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz     *
715cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz     * @param index index of the request to retrieve.
716cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz     * @return the requested request.
717cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz     */
718b2fea8dc6ecf427c1e620148946b6fd83a0bd210Phil Goodwin & Tyler Schultz    public static HttpRequest getSentHttpRequest(int index) {
719b2fea8dc6ecf427c1e620148946b6fd83a0bd210Phil Goodwin & Tyler Schultz        return ShadowDefaultRequestDirector.getSentHttpRequest(index);
720cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz    }
721cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz
7227cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    /**
7232399fd1c2f5ff65d329717361082957d309f7314Alexander Murmann & Jesse Toth     * Accessor to find out if HTTP requests were made during the current test.
7242399fd1c2f5ff65d329717361082957d309f7314Alexander Murmann & Jesse Toth     *
7252399fd1c2f5ff65d329717361082957d309f7314Alexander Murmann & Jesse Toth     * @return whether a request was made.
7262399fd1c2f5ff65d329717361082957d309f7314Alexander Murmann & Jesse Toth     */
7272399fd1c2f5ff65d329717361082957d309f7314Alexander Murmann & Jesse Toth    public static boolean httpRequestWasMade() {
7282399fd1c2f5ff65d329717361082957d309f7314Alexander Murmann & Jesse Toth        return getShadowApplication().getFakeHttpLayer().hasRequestInfos();
7292399fd1c2f5ff65d329717361082957d309f7314Alexander Murmann & Jesse Toth    }
7302399fd1c2f5ff65d329717361082957d309f7314Alexander Murmann & Jesse Toth
7315ed9c8041b5f927c930d50edef58c5378d12f89cAlexander Murmann & Phil Goodwin    public static boolean httpRequestWasMade(String uri) {
7325ed9c8041b5f927c930d50edef58c5378d12f89cAlexander Murmann & Phil Goodwin        return getShadowApplication().getFakeHttpLayer().hasRequestMatchingRule(new FakeHttpLayer.UriRequestMatcher(uri));
7335ed9c8041b5f927c930d50edef58c5378d12f89cAlexander Murmann & Phil Goodwin    }
7345ed9c8041b5f927c930d50edef58c5378d12f89cAlexander Murmann & Phil Goodwin
7352399fd1c2f5ff65d329717361082957d309f7314Alexander Murmann & Jesse Toth    /**
7367cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     * Accessor to obtain metadata for an HTTP request made during the current test in the order in which they were made.
7377cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     *
7387cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     * @param index index of the request to retrieve.
7397cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     * @return the requested request metadata.
7407cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     */
7417cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    public static HttpRequestInfo getSentHttpRequestInfo(int index) {
7427cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin        return ShadowDefaultRequestDirector.getSentHttpRequestInfo(index);
7437cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    }
7447cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin
7457cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    /**
7467cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     * Adds an HTTP response rule. The response will be returned when the rule is matched.
7477cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     *
748b539366073ccb47433de7191dbbf519ed4ab2d8fPhil Goodwin     * @param method   method to match.
749b539366073ccb47433de7191dbbf519ed4ab2d8fPhil Goodwin     * @param uri      uri to match.
7507cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     * @param response response to return when a match is found.
7517cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     */
7527cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    public static void addHttpResponseRule(String method, String uri, HttpResponse response) {
753f91a118112ae13d39251dd3c09f1d85d33283ba1Christian Williams & Phil Goodwin        getFakeHttpLayer().addHttpResponseRule(method, uri, response);
7547cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    }
7557cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin
7567cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    /**
7577cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     * Adds an HTTP response rule with a default method of GET. The response will be returned when the rule is matched.
7587cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     *
759b539366073ccb47433de7191dbbf519ed4ab2d8fPhil Goodwin     * @param uri      uri to match.
7607cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     * @param response response to return when a match is found.
7617cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     */
7627cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    public static void addHttpResponseRule(String uri, HttpResponse response) {
763f91a118112ae13d39251dd3c09f1d85d33283ba1Christian Williams & Phil Goodwin        getFakeHttpLayer().addHttpResponseRule(uri, response);
7647cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    }
7657cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin
7667cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    /**
7677cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     * Adds an HTTP response rule. The response will be returned when the rule is matched.
7687cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     *
769b539366073ccb47433de7191dbbf519ed4ab2d8fPhil Goodwin     * @param uri      uri to match.
7707cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     * @param response response to return when a match is found.
7717cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     */
7727cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    public static void addHttpResponseRule(String uri, String response) {
773f91a118112ae13d39251dd3c09f1d85d33283ba1Christian Williams & Phil Goodwin        getFakeHttpLayer().addHttpResponseRule(uri, response);
7747cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    }
7757cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin
7767cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    /**
7777cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     * Adds an HTTP response rule. The response will be returned when the rule is matched.
7787cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     *
7797cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     * @param requestMatcher custom {@code RequestMatcher}.
780b539366073ccb47433de7191dbbf519ed4ab2d8fPhil Goodwin     * @param response       response to return when a match is found.
7817cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     */
7824105051dc6b4e1d67766d1ad886bd3b191f8a68fChristian Williams    public static void addHttpResponseRule(RequestMatcher requestMatcher, HttpResponse response) {
783f91a118112ae13d39251dd3c09f1d85d33283ba1Christian Williams & Phil Goodwin        getFakeHttpLayer().addHttpResponseRule(requestMatcher, response);
784f91a118112ae13d39251dd3c09f1d85d33283ba1Christian Williams & Phil Goodwin    }
785f91a118112ae13d39251dd3c09f1d85d33283ba1Christian Williams & Phil Goodwin
786f91a118112ae13d39251dd3c09f1d85d33283ba1Christian Williams & Phil Goodwin    public static FakeHttpLayer getFakeHttpLayer() {
7877d446513cda09628ec24023cfdebeca847700b52Christian Williams & Phil Goodwin        return getShadowApplication().getFakeHttpLayer();
7887cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    }
7897cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin
790d76cb3959b31f5def82d0476cc114cc5da06a7a1Phil Goodwin    public static void setDefaultHttpResponse(int statusCode, String responseBody) {
791d76cb3959b31f5def82d0476cc114cc5da06a7a1Phil Goodwin        getFakeHttpLayer().setDefaultHttpResponse(statusCode, responseBody);
792d76cb3959b31f5def82d0476cc114cc5da06a7a1Phil Goodwin    }
793d76cb3959b31f5def82d0476cc114cc5da06a7a1Phil Goodwin
7947cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    public static void setDefaultHttpResponse(HttpResponse defaultHttpResponse) {
795f91a118112ae13d39251dd3c09f1d85d33283ba1Christian Williams & Phil Goodwin        getFakeHttpLayer().setDefaultHttpResponse(defaultHttpResponse);
796b2fea8dc6ecf427c1e620148946b6fd83a0bd210Phil Goodwin & Tyler Schultz    }
7975dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz
798b539795cdd8f6be1b0b01527905a31faea03242cRob Dickerson    public static void clearHttpResponseRules() {
799b539795cdd8f6be1b0b01527905a31faea03242cRob Dickerson        getFakeHttpLayer().clearHttpResponseRules();
800b539795cdd8f6be1b0b01527905a31faea03242cRob Dickerson    }
801b539795cdd8f6be1b0b01527905a31faea03242cRob Dickerson
8025dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz    public static void pauseLooper(Looper looper) {
8035dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz        ShadowLooper.pauseLooper(looper);
8045dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz    }
8055dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz
8065dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz    public static void unPauseLooper(Looper looper) {
8075dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz        ShadowLooper.unPauseLooper(looper);
8085dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz    }
8095dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz
8105dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz    public static void pauseMainLooper() {
8115dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz        ShadowLooper.pauseMainLooper();
8125dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz    }
8135dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz
8145dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz    public static void unPauseMainLooper() {
8155dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz        ShadowLooper.unPauseMainLooper();
8165dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz    }
8175dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz
818a4f7d50f8e6f12d541421383544fe16c185e4bbcPhil Goodwin & Tyler Schultz    public static Scheduler getUiThreadScheduler() {
819a4f7d50f8e6f12d541421383544fe16c185e4bbcPhil Goodwin & Tyler Schultz        return shadowOf(Looper.getMainLooper()).getScheduler();
820a4f7d50f8e6f12d541421383544fe16c185e4bbcPhil Goodwin & Tyler Schultz    }
8217d446513cda09628ec24023cfdebeca847700b52Christian Williams & Phil Goodwin
8220fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin    public static Scheduler getBackgroundScheduler() {
8230fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin        return getShadowApplication().getBackgroundScheduler();
8240fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin    }
8250fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin
8267d446513cda09628ec24023cfdebeca847700b52Christian Williams & Phil Goodwin    public static ShadowApplication getShadowApplication() {
8277d446513cda09628ec24023cfdebeca847700b52Christian Williams & Phil Goodwin        return shadowOf(Robolectric.application);
8287d446513cda09628ec24023cfdebeca847700b52Christian Williams & Phil Goodwin    }
829c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams
830c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams    /**
831c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams     * Calls {@code performClick()} on a {@code View} after ensuring that it and its ancestors are visible and that it
832c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams     * is enabled.
833c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams     *
834c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams     * @param view the view to click on
835c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams     * @return true if {@code View.OnClickListener}s were found and fired, false otherwise.
836c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams     * @throws RuntimeException if the preconditions are not met.
837c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams     */
838c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams    public static boolean clickOn(View view) {
839c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams        return shadowOf(view).checkedPerformClick();
840c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams    }
841c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams
842c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams    public static String visualize(View view) {
843c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams        Canvas canvas = new Canvas();
844c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams        view.draw(canvas);
845c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams        return shadowOf(canvas).getDescription();
846c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams    }
847c80983d2a778c62de05423980ba943217e2275bcChristian Williams & Phil Goodwin
848c80983d2a778c62de05423980ba943217e2275bcChristian Williams & Phil Goodwin    public static String visualize(Canvas canvas) {
849c80983d2a778c62de05423980ba943217e2275bcChristian Williams & Phil Goodwin        return shadowOf(canvas).getDescription();
850c80983d2a778c62de05423980ba943217e2275bcChristian Williams & Phil Goodwin    }
851c80983d2a778c62de05423980ba943217e2275bcChristian Williams & Phil Goodwin
852c80983d2a778c62de05423980ba943217e2275bcChristian Williams & Phil Goodwin    public static String visualize(Bitmap bitmap) {
853c80983d2a778c62de05423980ba943217e2275bcChristian Williams & Phil Goodwin        return shadowOf(bitmap).getDescription();
854c80983d2a778c62de05423980ba943217e2275bcChristian Williams & Phil Goodwin    }
8550b378afcde0200166e546c46a7642015accfce49Christian Williams & Ian Fisher}
856