Robolectric.java revision 3efec46bd0d61f590dbffe5c91cb2580b98628fe
1345fb6b77303f0d3c98cf748fefa0136183bdc79Christian Williamspackage com.xtremelabs.robolectric;
20b378afcde0200166e546c46a7642015accfce49Christian Williams & Ian Fisher
3284a307f028fc1b9c6175a28b60280bc53b5dbe6adriancowhamimport android.app.*;
41fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williamsimport android.appwidget.AppWidgetManager;
5b01474a3329222965d31068f5c33e59c6e6aa6a4Josh Lauer & Christian Williamsimport android.bluetooth.BluetoothAdapter;
6b01474a3329222965d31068f5c33e59c6e6aa6a4Josh Lauer & Christian Williamsimport android.bluetooth.BluetoothDevice;
7284a307f028fc1b9c6175a28b60280bc53b5dbe6adriancowhamimport android.content.*;
89e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowhamimport android.content.pm.ResolveInfo;
970a3ec81f0bda52d8388facf562a80e2d16ac96fGonçalo Silvaimport android.content.res.AssetManager;
10cf37f66c9bcbf0b25b879fbb78c9442c9101c7acRich Humphreyimport android.content.res.Configuration;
111fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williamsimport android.content.res.Resources;
12284a307f028fc1b9c6175a28b60280bc53b5dbe6adriancowhamimport android.database.sqlite.*;
13284a307f028fc1b9c6175a28b60280bc53b5dbe6adriancowhamimport android.graphics.*;
14284a307f028fc1b9c6175a28b60280bc53b5dbe6adriancowhamimport android.graphics.drawable.*;
1531af8607e2c7da6ba8708f57c4b67b6b4aaad921Michael Portuesiimport android.hardware.Camera;
165aab2036d99aa0bdced8c12a41a2b67a0bc8d676Daveimport android.hardware.SensorManager;
1706abdc35948a13a609c6e6c972d6fa19603b7fe9Joe Moore & Ryan Richardimport android.location.Geocoder;
181fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williamsimport android.location.LocationManager;
1936a56b1b82e6409c81ccc87ab7148cef105b4517Michael Portuesiimport android.media.AudioManager;
205480630a30500f34f6e03ed218d80f5ad843ed87Rich Humphreyimport android.media.MediaPlayer;
2131af8607e2c7da6ba8708f57c4b67b6b4aaad921Michael Portuesiimport android.media.MediaRecorder;
227581f8ab1d3fb2950ae13fc09a9b1862d1ec3af1Macarseimport android.net.ConnectivityManager;
237581f8ab1d3fb2950ae13fc09a9b1862d1ec3af1Macarseimport android.net.NetworkInfo;
246c15208cbe99e92bec0a70b5ca479314ea45fc3eTyler Schultzimport android.net.wifi.WifiInfo;
25523401082f8da71727f102003baf023e6c356386adriancowhamimport android.net.wifi.WifiManager;
26284a307f028fc1b9c6175a28b60280bc53b5dbe6adriancowhamimport android.os.*;
27284a307f028fc1b9c6175a28b60280bc53b5dbe6adriancowhamimport android.preference.*;
283efec46bd0d61f590dbffe5c91cb2580b98628feDaveimport android.telephony.SmsManager;
29c59af8991708feeca9cdfb028101113a79ef73f4Glenn Jahnke & Lenny Turetskyimport android.telephony.TelephonyManager;
30034305f3b3bcd3c0e44a6f7fb1cdcf1a9363a0c1Tyler Schultzimport android.text.ClipboardManager;
318bdd4405f79972e8c153562e96afa912f3fe81c8Graeme Duncanimport android.text.format.DateFormat;
329e562ba543ceec13e2553e043c24b15ff6d999ebPhil Goodwin & Tyler Schultzimport android.text.method.PasswordTransformationMethod;
33284a307f028fc1b9c6175a28b60280bc53b5dbe6adriancowhamimport android.view.*;
343f78da998ce73c1c7c25798a7e7e4f19287eff23Michael Portuesiimport android.view.animation.Animation;
3586b7c8791d1e5bff8403ec7fe6b8bdf7b5e05bf9Zoodlesimport android.view.animation.AnimationUtils;
36f02412fe85c5ff4a011793b408fb33bafb122340Rich Humphreyimport android.view.inputmethod.InputMethodManager;
37284a307f028fc1b9c6175a28b60280bc53b5dbe6adriancowhamimport android.webkit.*;
38284a307f028fc1b9c6175a28b60280bc53b5dbe6adriancowhamimport android.widget.*;
39b5d56e95f27d484ad3098ac18867262e7c8826c1Christian Williams & Phil Goodwinimport com.xtremelabs.robolectric.bytecode.RobolectricInternals;
40b5d56e95f27d484ad3098ac18867262e7c8826c1Christian Williams & Phil Goodwinimport com.xtremelabs.robolectric.bytecode.ShadowWrangler;
4107a3254138fdfe62b70c194b458879c51bea72b4Phil Goodwinimport com.xtremelabs.robolectric.shadows.*;
422cdde11355e7c249e83a8b7aaabae5977bbc3e49Phil Goodwinimport com.xtremelabs.robolectric.tester.org.apache.http.FakeHttpLayer;
432cdde11355e7c249e83a8b7aaabae5977bbc3e49Phil Goodwinimport com.xtremelabs.robolectric.tester.org.apache.http.HttpRequestInfo;
442cdde11355e7c249e83a8b7aaabae5977bbc3e49Phil Goodwinimport com.xtremelabs.robolectric.tester.org.apache.http.RequestMatcher;
4571d7c3bcf0400e4b81109dd785187e1a93da3cabChristian Williamsimport com.xtremelabs.robolectric.util.Scheduler;
46145ab32c7d7c170f2eb4f44660e2ab4c045bc5f1Tim Labeeuw & Tyler Schultzimport org.apache.http.Header;
47145ab32c7d7c170f2eb4f44660e2ab4c045bc5f1Tim Labeeuw & Tyler Schultzimport org.apache.http.HttpRequest;
48145ab32c7d7c170f2eb4f44660e2ab4c045bc5f1Tim Labeeuw & Tyler Schultzimport org.apache.http.HttpResponse;
49145ab32c7d7c170f2eb4f44660e2ab4c045bc5f1Tim Labeeuw & Tyler Schultzimport org.apache.http.impl.client.DefaultRequestDirector;
50145ab32c7d7c170f2eb4f44660e2ab4c045bc5f1Tim Labeeuw & Tyler Schultz
512ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richardimport java.lang.reflect.Field;
522ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richardimport java.lang.reflect.Modifier;
53145ab32c7d7c170f2eb4f44660e2ab4c045bc5f1Tim Labeeuw & Tyler Schultzimport java.util.Arrays;
54145ab32c7d7c170f2eb4f44660e2ab4c045bc5f1Tim Labeeuw & Tyler Schultzimport java.util.List;
550b378afcde0200166e546c46a7642015accfce49Christian Williams & Ian Fisher
56345fb6b77303f0d3c98cf748fefa0136183bdc79Christian Williamspublic class Robolectric {
578baea4cbf332f0e0acf559dfab4aa59dd7c71003Christian Williams & Ryan Richard    public static Application application;
588baea4cbf332f0e0acf559dfab4aa59dd7c71003Christian Williams & Ryan Richard
590b378afcde0200166e546c46a7642015accfce49Christian Williams & Ian Fisher    public static <T> T newInstanceOf(Class<T> clazz) {
60111e2299b5157f072d9e62406bd3c6fea9036cd4Christian Williams & Phil Goodwin        return RobolectricInternals.newInstanceOf(clazz);
610b378afcde0200166e546c46a7642015accfce49Christian Williams & Ian Fisher    }
620b378afcde0200166e546c46a7642015accfce49Christian Williams & Ian Fisher
631741463ed4618ec2b72cbd7764649fd0cca10a40Phil Goodwin    public static Object newInstanceOf(String className) {
641741463ed4618ec2b72cbd7764649fd0cca10a40Phil Goodwin        try {
651741463ed4618ec2b72cbd7764649fd0cca10a40Phil Goodwin            Class<?> clazz = Class.forName(className);
661741463ed4618ec2b72cbd7764649fd0cca10a40Phil Goodwin            if (clazz != null) {
671741463ed4618ec2b72cbd7764649fd0cca10a40Phil Goodwin                return newInstanceOf(clazz);
681741463ed4618ec2b72cbd7764649fd0cca10a40Phil Goodwin            }
691741463ed4618ec2b72cbd7764649fd0cca10a40Phil Goodwin        } catch (ClassNotFoundException e) {
701741463ed4618ec2b72cbd7764649fd0cca10a40Phil Goodwin        }
711741463ed4618ec2b72cbd7764649fd0cca10a40Phil Goodwin        return null;
721741463ed4618ec2b72cbd7764649fd0cca10a40Phil Goodwin    }
731741463ed4618ec2b72cbd7764649fd0cca10a40Phil Goodwin
74e7a41c9b39233781c97dd599ff61024f0510e308Christian Williams    public static void bindShadowClass(Class<?> shadowClass) {
75111e2299b5157f072d9e62406bd3c6fea9036cd4Christian Williams & Phil Goodwin        RobolectricInternals.bindShadowClass(shadowClass);
76e7a41c9b39233781c97dd599ff61024f0510e308Christian Williams    }
77e7a41c9b39233781c97dd599ff61024f0510e308Christian Williams
78e7a41c9b39233781c97dd599ff61024f0510e308Christian Williams    public static void bindDefaultShadowClasses() {
79638a930898ff7ff4d62b8a3028439142af65e4b4Christian Williams        bindShadowClasses(getDefaultShadowClasses());
80638a930898ff7ff4d62b8a3028439142af65e4b4Christian Williams    }
81638a930898ff7ff4d62b8a3028439142af65e4b4Christian Williams
82638a930898ff7ff4d62b8a3028439142af65e4b4Christian Williams    public static void bindShadowClasses(List<Class<?>> shadowClasses) {
83638a930898ff7ff4d62b8a3028439142af65e4b4Christian Williams        for (Class<?> shadowClass : shadowClasses) {
84638a930898ff7ff4d62b8a3028439142af65e4b4Christian Williams            bindShadowClass(shadowClass);
85e7a41c9b39233781c97dd599ff61024f0510e308Christian Williams        }
86e7a41c9b39233781c97dd599ff61024f0510e308Christian Williams    }
87e7a41c9b39233781c97dd599ff61024f0510e308Christian Williams
88cedd6ea60db4bf5744077021f20092005bb3d461Tyler Schultz    /**
89cedd6ea60db4bf5744077021f20092005bb3d461Tyler Schultz     * Invoke this utility method in tests to reveal which Android api classes and methods are being invoked
90cedd6ea60db4bf5744077021f20092005bb3d461Tyler Schultz     * for which there are no shadows or shadow methods. This helps expose which methods are being invoked
91cedd6ea60db4bf5744077021f20092005bb3d461Tyler Schultz     * either by a third party library or application code which need new shadow methods to be written. Generates
92cedd6ea60db4bf5744077021f20092005bb3d461Tyler Schultz     * output for the current test only.
93cedd6ea60db4bf5744077021f20092005bb3d461Tyler Schultz     */
94cedd6ea60db4bf5744077021f20092005bb3d461Tyler Schultz    public static void logMissingInvokedShadowMethods() {
95cedd6ea60db4bf5744077021f20092005bb3d461Tyler Schultz        ShadowWrangler.getInstance().logMissingInvokedShadowMethods();
96cedd6ea60db4bf5744077021f20092005bb3d461Tyler Schultz    }
97cedd6ea60db4bf5744077021f20092005bb3d461Tyler Schultz
98e7a41c9b39233781c97dd599ff61024f0510e308Christian Williams    public static List<Class<?>> getDefaultShadowClasses() {
990b378afcde0200166e546c46a7642015accfce49Christian Williams & Ian Fisher        return Arrays.asList(
100a739b57a6b1a99f14d586f609f0f62f48b8e2284Ian Fisher & Tyler Schultz                ShadowAbsListView.class,
101c146ad8871a32bbf62aca259ede77d3f9cd07773Tyler Schultz                ShadowAbsoluteLayout.class,
1026bdff425fce6705103662f20370c9b371ccf23adRich Humphrey                ShadowAbsSeekBar.class,
103afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowAbsSpinner.class,
1049893f7266e7dcc1332743887045bd69991441421Christian Williams                ShadowAbstractCursor.class,
105afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowActivity.class,
106e955bad0fcce60545a0d3ee54ca3006493947518Michael Portuesi                ShadowActivityInfo.class,
107e955bad0fcce60545a0d3ee54ca3006493947518Michael Portuesi                ShadowActivityGroup.class,
108f68d6a67f035c4bde0c95dcf6c3aa2d68a436972Michael Portuesi                ShadowActivityManager.class,
109afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowAdapterView.class,
110afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowAddress.class,
111cf37f66c9bcbf0b25b879fbb78c9442c9101c7acRich Humphrey                ShadowAlarmManager.class,
112afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowAlertDialog.class,
113afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowAlertDialog.ShadowBuilder.class,
11412fe960436852d05ef79837a462e6132b2e50c8aJan Berkel                ShadowAndroidHttpClient.class,
1153f78da998ce73c1c7c25798a7e7e4f19287eff23Michael Portuesi                ShadowAnimation.class,
11686b7c8791d1e5bff8403ec7fe6b8bdf7b5e05bf9Zoodles                ShadowAnimationUtils.class,
117afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowApplication.class,
118afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowAppWidgetManager.class,
119e9c420439254fc0c893e44987db10e1418fff338mylacc                ShadowArrayAdapter.class,
120114296321cba71f8133713306049ce3b411e8563Gonçalo Silva                ShadowAssetManager.class,
12171d7c3bcf0400e4b81109dd785187e1a93da3cabChristian Williams                ShadowAsyncTask.class,
12236a56b1b82e6409c81ccc87ab7148cef105b4517Michael Portuesi                ShadowAudioManager.class,
123afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowBaseAdapter.class,
124ae26238c7d01caef84ceddd8ffb42c32306918d6Josh Lauer & Christian Williams                ShadowBitmap.class,
125afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowBitmapDrawable.class,
126b01474a3329222965d31068f5c33e59c6e6aa6a4Josh Lauer & Christian Williams                ShadowBitmapFactory.class,
127b01474a3329222965d31068f5c33e59c6e6aa6a4Josh Lauer & Christian Williams                ShadowBluetoothAdapter.class,
128b01474a3329222965d31068f5c33e59c6e6aa6a4Josh Lauer & Christian Williams                ShadowBluetoothDevice.class,
12975d564ab2b02cbe8a0d8cb33779530f72ea813abChristian Williams & Ryan Richard                ShadowBundle.class,
130ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz                ShadowButton.class,
13131af8607e2c7da6ba8708f57c4b67b6b4aaad921Michael Portuesi                ShadowCamera.class,
13231af8607e2c7da6ba8708f57c4b67b6b4aaad921Michael Portuesi                ShadowCameraParameters.class,
133cf37f66c9bcbf0b25b879fbb78c9442c9101c7acRich Humphrey                ShadowCameraSize.class,
134afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowCanvas.class,
135034305f3b3bcd3c0e44a6f7fb1cdcf1a9363a0c1Tyler Schultz                ShadowClipboardManager.class,
136a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz                ShadowColorDrawable.class,
137e3bf0c0e84dd3464de0a508f9c03512d23c11bd8Josh Lauer & Christian Williams                ShadowColorMatrix.class,
138e3bf0c0e84dd3464de0a508f9c03512d23c11bd8Josh Lauer & Christian Williams                ShadowColorMatrixColorFilter.class,
139b613c76c40bffb15fbde84df32365bde3ffdb4c5Christian Williams                ShadowColorStateList.class,
140afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowComponentName.class,
141cf37f66c9bcbf0b25b879fbb78c9442c9101c7acRich Humphrey                ShadowCompoundButton.class,
142cf37f66c9bcbf0b25b879fbb78c9442c9101c7acRich Humphrey                ShadowConfiguration.class,
1437581f8ab1d3fb2950ae13fc09a9b1862d1ec3af1Macarse                ShadowConnectivityManager.class,
14420b94927aff24d7bd975d6ee717f1b65da9ee7c1Josh Lauer & Christian Williams                ShadowContentResolver.class,
1459893f7266e7dcc1332743887045bd69991441421Christian Williams                ShadowContentValues.class,
146afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowContext.class,
147afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowContextWrapper.class,
1481dcccba609fb2036994803ca6d71f9c76e1fe8e9Chee Wong                ShadowContextThemeWrapper.class,
149b613c76c40bffb15fbde84df32365bde3ffdb4c5Christian Williams                ShadowCookieManager.class,
15032fa4fc29ce30047ce5c3c00e3eea5cf1c27b056adriancowham                ShadowCookieSyncManager.class,
151c97f858ddc2222e96a6492c5fba30775cfeac4e4Zoodles                ShadowCountDownTimer.class,
1520dabe713bf2d78df246d9cff18ed11363491a2acAdam Cohen-Rose                ShadowCursorAdapter.class,
153e2623f9312670f0df22c6e6c5f7969bd01d18130Joe Moore & Tyler Schultz                ShadowDatabaseUtils.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,
161e9d4b241c1e9b9225da1424698942c358ef22162Chris Heisterkamp & Joe Moore                ShadowEnvironment.class,
1629044c45523b0b9da7cfc8e0cc8c5ecf5d3085ee0Cristian                ShadowExpandableListView.class,
1633783a296406676c639a954d14ef464a4207de689Joe Moore & Lowell Kirsh                ShadowFilter.class,
164d4e5d32b81cae2114f66739beaac6fe1ceeead0dJosh Lauer & Christian Williams                ShadowFloatMath.class,
165b8898598e493d4df40038a501ff77f2aa437e9efMike Grafton & Tyler Schultz                ShadowFrameLayout.class,
16606abdc35948a13a609c6e6c972d6fa19603b7fe9Joe Moore & Ryan Richard                ShadowGeocoder.class,
167afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowGeoPoint.class,
1685be5c864634de9072b89911eab6d0c8d772c9ad3Rich Humphrey                ShadowGridView.class,
169afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowHandler.class,
17050526fd965fbed3d06b5213d62b2c76db9932a2fRyan Richard                ShadowHtml.class,
171afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowImageView.class,
172f02412fe85c5ff4a011793b408fb33bafb122340Rich Humphrey                ShadowInputMethodManager.class,
173afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowIntent.class,
174afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowIntentFilter.class,
175a739b57a6b1a99f14d586f609f0f62f48b8e2284Ian Fisher & Tyler Schultz                ShadowIntentFilterAuthorityEntry.class,
176afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowItemizedOverlay.class,
177d5ce8bb5be735e441111505979d12f20600a553aMike Mazur & Tyler Schultz                ShadowJsPromptResult.class,
178d5ce8bb5be735e441111505979d12f20600a553aMike Mazur & Tyler Schultz                ShadowJsResult.class,
179b188febae0b24463565d9b6157bd43e0ff22a269David Farber & Ryan Richard                ShadowKeyEvent.class,
18008fb8f8709b227d9c12f5197c1884f22137075a5adriancowham                ShadowKeyguardManager.class,
18173d4a15f75e5175c3b07de348834dd2d6684aae5Aaron Day                ShadowLayerDrawable.class,
182afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowLayoutInflater.class,
183afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowLayoutParams.class,
18484c8e78264cc160819f32a6006049f87d81c43deDavid Farber & Joe Moore                ShadowLinearLayout.class,
185afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowListActivity.class,
186db942f0867e5e1f3bc97eb8facf686bdbca7c20aRich Humphrey                ShadowListPreference.class,
187afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowListView.class,
188afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowLocation.class,
189afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowLocationManager.class,
1901ce4754cba537b287d24e85e7d5434408ae89f2dTyler Schultz                ShadowLog.class,
191afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowLooper.class,
192afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowMapController.class,
193afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowMapActivity.class,
194afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowMapView.class,
1950d21afe8a769457a7c6691bd8418a73aafb46beaJosh Lauer & Christian Williams                ShadowMatrix.class,
1965480630a30500f34f6e03ed218d80f5ad843ed87Rich Humphrey                ShadowMediaPlayer.class,
19776209fe88929d880ac6e008d5a3e6e1e1dd4939aPhil Goodwin                ShadowMediaRecorder.class,
198d3f9a56dffcdd129355351019aef9652cce0d6b2Josh Lauer & Christian Williams                ShadowMediaStore.ShadowImages.ShadowMedia.class,
19976209fe88929d880ac6e008d5a3e6e1e1dd4939aPhil Goodwin                ShadowMenuInflater.class,
200afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowMotionEvent.class,
20107a3254138fdfe62b70c194b458879c51bea72b4Phil Goodwin                ShadowNotification.class,
202a739b57a6b1a99f14d586f609f0f62f48b8e2284Ian Fisher & Tyler Schultz                ShadowNdefMessage.class,
203a739b57a6b1a99f14d586f609f0f62f48b8e2284Ian Fisher & Tyler Schultz                ShadowNdefRecord.class,
204a739b57a6b1a99f14d586f609f0f62f48b8e2284Ian Fisher & Tyler Schultz                ShadowNfcAdapter.class,
20507a3254138fdfe62b70c194b458879c51bea72b4Phil Goodwin                ShadowNotificationManager.class,
2067581f8ab1d3fb2950ae13fc09a9b1862d1ec3af1Macarse                ShadowNetworkInfo.class,
207afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowOverlayItem.class,
208afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowPaint.class,
2092ed797adb849f96d26ffaae31d68a2a67f56f27bJan Berkel                ShadowPair.class,
210cb6dcc93e483e0537f8c93595bb6687b392a0d2eadriancowham                ShadowParcel.class,
2119e562ba543ceec13e2553e043c24b15ff6d999ebPhil Goodwin & Tyler Schultz                ShadowPasswordTransformationMethod.class,
212afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowPath.class,
213afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowPendingIntent.class,
214afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowPoint.class,
215d4e5d32b81cae2114f66739beaac6fe1ceeead0dJosh Lauer & Christian Williams                ShadowPointF.class,
216b613c76c40bffb15fbde84df32365bde3ffdb4c5Christian Williams                ShadowPowerManager.class,
217079a071612e45353e46bde2f29eff7e6fc762f01Rich Humphrey                ShadowPreference.class,
218eb47a8c4f989358eb087720918ff77a8e1e6f260Rich Humphrey                ShadowPreferenceActivity.class,
219eb47a8c4f989358eb087720918ff77a8e1e6f260Rich Humphrey                ShadowPreferenceCategory.class,
220eb47a8c4f989358eb087720918ff77a8e1e6f260Rich Humphrey                ShadowPreferenceGroup.class,
221e8637c922e4f8e681769d63689accb89e6108056Michael Portuesi                ShadowPreferenceManager.class,
222860f8c39f4b14a23d103310d523c7855d40b8f58Rich Humphrey                ShadowPreferenceScreen.class,
223079a071612e45353e46bde2f29eff7e6fc762f01Rich Humphrey                ShadowProgressBar.class,
2244ba5e84ecdbe474b0f5a55f19f1b2af49fbbe822Rich Humphrey                ShadowProgressDialog.class,
22584c8e78264cc160819f32a6006049f87d81c43deDavid Farber & Joe Moore                ShadowRadioButton.class,
22684c8e78264cc160819f32a6006049f87d81c43deDavid Farber & Joe Moore                ShadowRadioGroup.class,
227c5e7ea096261d2e0220a763119aeb58fab47de2eMike Grafton & Tyler Schultz                ShadowRatingBar.class,
228afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowRect.class,
2299e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowham                ShadowResolveInfo.class,
230afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowRemoteViews.class,
231a739b57a6b1a99f14d586f609f0f62f48b8e2284Ian Fisher & Tyler Schultz                ShadowResultReceiver.class,
2320dabe713bf2d78df246d9cff18ed11363491a2acAdam Cohen-Rose                ShadowResourceCursorAdapter.class,
233afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowResources.class,
234b613c76c40bffb15fbde84df32365bde3ffdb4c5Christian Williams                ShadowResources.ShadowTheme.class,
235b82ccb9a3ef511d607ca5c4238a50d78a6aeaebaRich Humphrey                ShadowSeekBar.class,
2365aab2036d99aa0bdced8c12a41a2b67a0bc8d676Dave                ShadowSensorManager.class,
237afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowService.class,
238afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowSettings.class,
239afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowSettings.ShadowSecure.class,
240afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowSettings.ShadowSystem.class,
2410dabe713bf2d78df246d9cff18ed11363491a2acAdam Cohen-Rose                ShadowSimpleCursorAdapter.class,
242145ab32c7d7c170f2eb4f44660e2ab4c045bc5f1Tim Labeeuw & Tyler Schultz                ShadowShapeDrawable.class,
2433efec46bd0d61f590dbffe5c91cb2580b98628feDave                ShadowSmsManager.class,
244afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowSpannableStringBuilder.class,
24557d524e7eebcea4a186fd6f849142a56bcaa1b2aJan Berkel                ShadowSyncResult.class,
24657d524e7eebcea4a186fd6f849142a56bcaa1b2aJan Berkel                ShadowSyncResult.ShadowSyncStats.class,
247ac32ea1c5b4b7bca81fccd0be4f5a43ae8f2a11bChris Van Vranken                ShadowSQLiteProgram.class,
2489893f7266e7dcc1332743887045bd69991441421Christian Williams                ShadowSQLiteDatabase.class,
249b574da97569d2d098d0aaebbb947bffa8514a4f7Michael Portuesi                ShadowSQLiteCursor.class,
25028dd1fc86f58b35b79e2fedc13f5b26f600a9a6aMichael Portuesi                ShadowSQLiteOpenHelper.class,
251bdb2b1d336367115dee931221ea77fe1833607daChris Van Vranken                ShadowSQLiteStatement.class,
2523a99d4817b65b7eb0a9f44486072dbf43fdb2144Michael Portuesi                ShadowSQLiteQueryBuilder.class,
253c1a22de534a98808eb2ce5c6c956e25c0d9625e2Rich Humphrey                ShadowSslErrorHandler.class,
254284a307f028fc1b9c6175a28b60280bc53b5dbe6adriancowham                ShadowStateListDrawable.class,
2557dc1a70de2b28bdf70d887accfb5805f3497bda8Josh Lauer & Christian Williams                ShadowSurfaceView.class,
256203e06c477634129655bee1db352d7e574513f9cJoe Moore, Lowell Kirsh & Ryan Richard                ShadowTabActivity.class,
257b8898598e493d4df40038a501ff77f2aa437e9efMike Grafton & Tyler Schultz                ShadowTabHost.class,
258b8898598e493d4df40038a501ff77f2aa437e9efMike Grafton & Tyler Schultz                ShadowTabSpec.class,
259c59af8991708feeca9cdfb028101113a79ef73f4Glenn Jahnke & Lenny Turetsky                ShadowTelephonyManager.class,
260afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowTextUtils.class,
261afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowTextView.class,
262afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowToast.class,
263b613c76c40bffb15fbde84df32365bde3ffdb4c5Christian Williams                ShadowTypedArray.class,
264afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowTypedValue.class,
265237888bb1e926aea523388de5d511a35f38506efPhil Goodwin & Tyler Schultz                ShadowURLSpan.class,
2662afd69b7f52c3c4c1fbe17f46e84d0cb178d3adeKathy Lin                ShadowVideoView.class,
267afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowView.class,
26804466b87c86d2581d1708ac45240d18498a76060Aaron Day                ShadowViewAnimator.class,
26949a4cce94ec0c54e1e90dbe74bf5b028e7b9300bPhil Plante & Ryan Richard                ShadowViewConfiguration.class,
270afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowViewGroup.class,
27104466b87c86d2581d1708ac45240d18498a76060Aaron Day                ShadowViewFlipper.class,
2720e1c92ca35030e2c173b141c41341636bbb7a258Christian Williams                ShadowViewStub.class,
2730189062c055157592d5aa6ef59b26fae6f91dea4Rich Humphrey                ShadowWebSettings.class,
2749ef88bf39bff29cb39dee4d84542c8f5a6178748Tyler Schultz                ShadowWebView.class,
2759310da98cc39d731742caddf3f48a3dcbd8f5b77Mike Mazur                ShadowWifiInfo.class,
276afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowWifiManager.class,
277e2f97afa26ab916fbc36ca1bbf18ba507023ab50Christian Williams                ShadowWindow.class,
278afe0a89d904a7fe2f5980b9deb26cc3240192459Christian Williams                ShadowZoomButtonsController.class
279adfaceabbda4c8c51f24a0def8926075bd7306adChristian Williams        );
2800b378afcde0200166e546c46a7642015accfce49Christian Williams & Ian Fisher    }
28190008046fcb6aac20be2df7a0aa07129f6f0d62bIan Fisher
282345fb6b77303f0d3c98cf748fefa0136183bdc79Christian Williams    public static void resetStaticState() {
283e6dfaf271dbaf3ac1bb82d953669a56a02fc71d6Phil Goodwin & Tyler Schultz        ShadowWrangler.getInstance().silence();
284345fb6b77303f0d3c98cf748fefa0136183bdc79Christian Williams        Robolectric.application = new Application();
285d092cebc8c9179d3a138827fd65961b867e2c53fJosh Lauer & Christian Williams        ShadowBitmapFactory.reset();
286be87a589a85b713d1755c36b2eca8462177f91f3David Farber & Joe Moore        ShadowDrawable.reset();
2872ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard        ShadowMediaStore.reset();
288d80699d3abb6e7d65feba541222ed4fe76e90ae5Tyler Schultz        ShadowLog.reset();
289d89c81f2589fb08cba4320a7b69defba0da22a28Jan Berkel        ShadowContext.clearFilesAndCache();
290570d4f805f8fdbd8c786330989b40706129f5b1ePhil Goodwin & Ryan Richard        ShadowLooper.resetThreadLoopers();
29190008046fcb6aac20be2df7a0aa07129f6f0d62bIan Fisher    }
2921fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
2939122a05312e767618ba0545a951df9cab86c8716Christian Williams    public static <T> T directlyOn(T shadowedObject) {
2949122a05312e767618ba0545a951df9cab86c8716Christian Williams        return RobolectricInternals.directlyOn(shadowedObject);
2959122a05312e767618ba0545a951df9cab86c8716Christian Williams    }
2969122a05312e767618ba0545a951df9cab86c8716Christian Williams
297a739b57a6b1a99f14d586f609f0f62f48b8e2284Ian Fisher & Tyler Schultz    public static ShadowAbsListView shadowOf(AbsListView instance) {
298a739b57a6b1a99f14d586f609f0f62f48b8e2284Ian Fisher & Tyler Schultz        return (ShadowAbsListView) shadowOf_(instance);
299a739b57a6b1a99f14d586f609f0f62f48b8e2284Ian Fisher & Tyler Schultz    }
300a739b57a6b1a99f14d586f609f0f62f48b8e2284Ian Fisher & Tyler Schultz
301cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowAbsSeekBar shadowOf(AbsSeekBar instance) {
302cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowAbsSeekBar) shadowOf_(instance);
3031fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
3041fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
305cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowActivity shadowOf(Activity instance) {
306cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowActivity) shadowOf_(instance);
30773d4a15f75e5175c3b07de348834dd2d6684aae5Aaron Day    }
30873d4a15f75e5175c3b07de348834dd2d6684aae5Aaron Day
309cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowActivityGroup shadowOf(ActivityGroup instance) {
310cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowActivityGroup) shadowOf_(instance);
311a915d5453773d2acb8cc72a70bf8460d6fd6cd26Lowell Kirsh & Ryan Richard    }
312a915d5453773d2acb8cc72a70bf8460d6fd6cd26Lowell Kirsh & Ryan Richard
313cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowActivityManager shadowOf(ActivityManager instance) {
314cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowActivityManager) shadowOf_(instance);
3151fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
3161fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
317cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowAdapterView shadowOf(AdapterView instance) {
318cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowAdapterView) shadowOf_(instance);
3197581f8ab1d3fb2950ae13fc09a9b1862d1ec3af1Macarse    }
3207581f8ab1d3fb2950ae13fc09a9b1862d1ec3af1Macarse
321cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowAlarmManager shadowOf(AlarmManager instance) {
322cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowAlarmManager) Robolectric.shadowOf_(instance);
3232e790fd8d977ca70d83da5bcaeb0beca290ff237Lowell Kirsh & Ryan Richard    }
3242e790fd8d977ca70d83da5bcaeb0beca290ff237Lowell Kirsh & Ryan Richard
325cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowAlertDialog shadowOf(AlertDialog instance) {
326cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowAlertDialog) shadowOf_(instance);
3277581f8ab1d3fb2950ae13fc09a9b1862d1ec3af1Macarse    }
3287581f8ab1d3fb2950ae13fc09a9b1862d1ec3af1Macarse
329cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowAnimation shadowOf(Animation instance) {
330cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowAnimation) shadowOf_(instance);
3316c15208cbe99e92bec0a70b5ca479314ea45fc3eTyler Schultz    }
3326c15208cbe99e92bec0a70b5ca479314ea45fc3eTyler Schultz
333cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowAnimationUtils shadowOf(AnimationUtils instance) {
334cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowAnimationUtils) shadowOf_(instance);
335523401082f8da71727f102003baf023e6c356386adriancowham    }
336ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
337cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowApplication shadowOf(Application instance) {
338cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowApplication) shadowOf_(instance);
3391fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
3401fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
341cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowAppWidgetManager shadowOf(AppWidgetManager instance) {
342cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowAppWidgetManager) shadowOf_(instance);
3431fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
3441fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
345cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowArrayAdapter shadowOf(ArrayAdapter instance) {
346cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowArrayAdapter) shadowOf_(instance);
3471fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
3481fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
349cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowAssetManager shadowOf(AssetManager instance) {
350cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowAssetManager) Robolectric.shadowOf_(instance);
3519044c45523b0b9da7cfc8e0cc8c5ecf5d3085ee0Cristian    }
3529044c45523b0b9da7cfc8e0cc8c5ecf5d3085ee0Cristian
353cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowAudioManager shadowOf(AudioManager instance) {
354cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowAudioManager) shadowOf_(instance);
3551fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
3561fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
357cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowBitmap shadowOf(Bitmap other) {
358cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowBitmap) Robolectric.shadowOf_(other);
3593783a296406676c639a954d14ef464a4207de689Joe Moore & Lowell Kirsh    }
3603783a296406676c639a954d14ef464a4207de689Joe Moore & Lowell Kirsh
361cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowBitmapDrawable shadowOf(BitmapDrawable instance) {
362cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowBitmapDrawable) shadowOf_(instance);
3633783a296406676c639a954d14ef464a4207de689Joe Moore & Lowell Kirsh    }
3643783a296406676c639a954d14ef464a4207de689Joe Moore & Lowell Kirsh
365cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowBluetoothAdapter shadowOf(BluetoothAdapter other) {
366cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowBluetoothAdapter) Robolectric.shadowOf_(other);
3671fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
3681fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
369cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowBluetoothDevice shadowOf(BluetoothDevice other) {
370cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowBluetoothDevice) Robolectric.shadowOf_(other);
371f91a118112ae13d39251dd3c09f1d85d33283ba1Christian Williams & Phil Goodwin    }
372ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
373cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowBundle shadowOf(Bundle instance) {
374cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowBundle) shadowOf_(instance);
37563dda805c3f505f03263a3d4830747e53b421795Greg Choi & Mike Grafton    }
37663dda805c3f505f03263a3d4830747e53b421795Greg Choi & Mike Grafton
377cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowCamera shadowOf(Camera instance) {
378cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowCamera) shadowOf_(instance);
3791fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
3801fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
381cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowCameraParameters shadowOf(Camera.Parameters instance) {
382cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowCameraParameters) shadowOf_(instance);
38332fa4fc29ce30047ce5c3c00e3eea5cf1c27b056adriancowham    }
38432fa4fc29ce30047ce5c3c00e3eea5cf1c27b056adriancowham
385cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowCameraSize shadowOf(Camera.Size instance) {
386cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowCameraSize) shadowOf_(instance);
3871fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
3881fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
389cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowCanvas shadowOf(Canvas instance) {
390cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowCanvas) shadowOf_(instance);
3911fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
3921fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
393034305f3b3bcd3c0e44a6f7fb1cdcf1a9363a0c1Tyler Schultz    public static ShadowClipboardManager shadowOf(ClipboardManager instance) {
394034305f3b3bcd3c0e44a6f7fb1cdcf1a9363a0c1Tyler Schultz        return (ShadowClipboardManager) shadowOf_(instance);
395034305f3b3bcd3c0e44a6f7fb1cdcf1a9363a0c1Tyler Schultz    }
396034305f3b3bcd3c0e44a6f7fb1cdcf1a9363a0c1Tyler Schultz
397cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowColorDrawable shadowOf(ColorDrawable instance) {
398cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowColorDrawable) shadowOf_(instance);
399079a071612e45353e46bde2f29eff7e6fc762f01Rich Humphrey    }
400ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
401cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowColorMatrix shadowOf(ColorMatrix instance) {
402cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowColorMatrix) shadowOf_(instance);
403eb47a8c4f989358eb087720918ff77a8e1e6f260Rich Humphrey    }
404ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
405cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowConfiguration shadowOf(Configuration instance) {
406cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowConfiguration) Robolectric.shadowOf_(instance);
407eb47a8c4f989358eb087720918ff77a8e1e6f260Rich Humphrey    }
408ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
409cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowConnectivityManager shadowOf(ConnectivityManager instance) {
410cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowConnectivityManager) shadowOf_(instance);
411eb47a8c4f989358eb087720918ff77a8e1e6f260Rich Humphrey    }
412ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
413cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowCookieManager shadowOf(CookieManager instance) {
414cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowCookieManager) shadowOf_(instance);
415860f8c39f4b14a23d103310d523c7855d40b8f58Rich Humphrey    }
416ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
417cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowContentResolver shadowOf(ContentResolver instance) {
418cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowContentResolver) shadowOf_(instance);
419079a071612e45353e46bde2f29eff7e6fc762f01Rich Humphrey    }
420ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
421cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowCookieSyncManager shadowOf(CookieSyncManager instance) {
422cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowCookieSyncManager) shadowOf_(instance);
4234ba5e84ecdbe474b0f5a55f19f1b2af49fbbe822Rich Humphrey    }
424ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
425cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowContext shadowOf(Context instance) {
426cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowContext) shadowOf_(instance);
4271fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
4281fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
429cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowContentValues shadowOf(ContentValues other) {
430cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowContentValues) Robolectric.shadowOf_(other);
431c5e7ea096261d2e0220a763119aeb58fab47de2eMike Grafton & Tyler Schultz    }
432c5e7ea096261d2e0220a763119aeb58fab47de2eMike Grafton & Tyler Schultz
433cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowContextWrapper shadowOf(ContextWrapper instance) {
434cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowContextWrapper) shadowOf_(instance);
435db942f0867e5e1f3bc97eb8facf686bdbca7c20aRich Humphrey    }
436db942f0867e5e1f3bc97eb8facf686bdbca7c20aRich Humphrey
437cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowCountDownTimer shadowOf(CountDownTimer instance) {
438cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowCountDownTimer) Robolectric.shadowOf_(instance);
4391fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
4401fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
441cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowCursorAdapter shadowOf(CursorAdapter instance) {
442cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowCursorAdapter) shadowOf_(instance);
443145ab32c7d7c170f2eb4f44660e2ab4c045bc5f1Tim Labeeuw & Tyler Schultz    }
444145ab32c7d7c170f2eb4f44660e2ab4c045bc5f1Tim Labeeuw & Tyler Schultz
445cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowDateFormat shadowOf(DateFormat instance) {
446cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowDateFormat) shadowOf_(instance);
447c1a22de534a98808eb2ce5c6c956e25c0d9625e2Rich Humphrey    }
4481fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
449cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowDefaultRequestDirector shadowOf(DefaultRequestDirector instance) {
450cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowDefaultRequestDirector) shadowOf_(instance);
451e3bf0c0e84dd3464de0a508f9c03512d23c11bd8Josh Lauer & Christian Williams    }
452e3bf0c0e84dd3464de0a508f9c03512d23c11bd8Josh Lauer & Christian Williams
453cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowDialog shadowOf(Dialog instance) {
454cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowDialog) shadowOf_(instance);
4551fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
4561fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
457cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowDialogPreference shadowOf(DialogPreference instance) {
458cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowDialogPreference) shadowOf_(instance);
4591fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
4601fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
461cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowDrawable shadowOf(Drawable instance) {
462cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowDrawable) shadowOf_(instance);
46304466b87c86d2581d1708ac45240d18498a76060Aaron Day    }
46404466b87c86d2581d1708ac45240d18498a76060Aaron Day
465cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowDisplay shadowOf(Display instance) {
466cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowDisplay) shadowOf_(instance);
4674d6be96cb3b92defaa18cca3a79298b4821ba8ccJoe Moore & Tyler Schultz    }
4684d6be96cb3b92defaa18cca3a79298b4821ba8ccJoe Moore & Tyler Schultz
469cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowExpandableListView shadowOf(ExpandableListView instance) {
470cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowExpandableListView) shadowOf_(instance);
471a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz    }
472a075f94a84c6dd3493700d0c752fc545642e44d5Mike Grafton & Tyler Schultz
473cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowFilter shadowOf(Filter instance) {
474cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowFilter) shadowOf_(instance);
4751fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
4761fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
477cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowFrameLayout shadowOf(FrameLayout instance) {
478cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowFrameLayout) shadowOf_(instance);
4790189062c055157592d5aa6ef59b26fae6f91dea4Rich Humphrey    }
4800189062c055157592d5aa6ef59b26fae6f91dea4Rich Humphrey
481cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowGeocoder shadowOf(Geocoder instance) {
482cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowGeocoder) shadowOf_(instance);
4836cf9d6f657e61d727afc221dd157ae6ca41714baTyler Schultz    }
4846cf9d6f657e61d727afc221dd157ae6ca41714baTyler Schultz
485cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowGridView shadowOf(GridView instance) {
486cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowGridView) shadowOf_(instance);
4871fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
4881fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
489cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowHandler shadowOf(Handler instance) {
490cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowHandler) shadowOf_(instance);
4911fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
4921fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
493433b46be67768332f764eab6879e0649993d79e3Christian Williams    public static ShadowImageView shadowOf(ImageView instance) {
494433b46be67768332f764eab6879e0649993d79e3Christian Williams        return (ShadowImageView) shadowOf_(instance);
4951fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
4961fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
497cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowInputMethodManager shadowOf(InputMethodManager instance) {
498cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowInputMethodManager) shadowOf_(instance);
4999e8ddf31248248145a5eeb3e21a1a9262cc719edadriancowham    }
500ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
501cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowIntent shadowOf(Intent instance) {
502cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowIntent) shadowOf_(instance);
5031fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
5041fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
505d5ce8bb5be735e441111505979d12f20600a553aMike Mazur & Tyler Schultz    public static ShadowJsPromptResult shadowOf(JsPromptResult instance) {
506d5ce8bb5be735e441111505979d12f20600a553aMike Mazur & Tyler Schultz        return (ShadowJsPromptResult) shadowOf_(instance);
507d5ce8bb5be735e441111505979d12f20600a553aMike Mazur & Tyler Schultz    }
508d5ce8bb5be735e441111505979d12f20600a553aMike Mazur & Tyler Schultz
509d5ce8bb5be735e441111505979d12f20600a553aMike Mazur & Tyler Schultz    public static ShadowJsResult shadowOf(JsResult instance) {
510d5ce8bb5be735e441111505979d12f20600a553aMike Mazur & Tyler Schultz        return (ShadowJsResult) shadowOf_(instance);
511d5ce8bb5be735e441111505979d12f20600a553aMike Mazur & Tyler Schultz    }
512d5ce8bb5be735e441111505979d12f20600a553aMike Mazur & Tyler Schultz
513cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowKeyguardManager shadowOf(KeyguardManager instance) {
514cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowKeyguardManager) shadowOf_(instance);
5151fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
516ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
517cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowLayerDrawable shadowOf(LayerDrawable instance) {
518cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowLayerDrawable) shadowOf_(instance);
51994c593173ef0ac64cca724199d6228057e1c8fd8Rich Humphrey    }
5201fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
521cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowLayoutInflater shadowOf(LayoutInflater instance) {
522cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowLayoutInflater) shadowOf_(instance);
523c95377d49257364984344908f301574ebe8d4d9cPhil Goodwin & Tyler Schultz    }
524c95377d49257364984344908f301574ebe8d4d9cPhil Goodwin & Tyler Schultz
525cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowListActivity shadowOf(ListActivity instance) {
526cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowListActivity) shadowOf_(instance);
5271fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
5281fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
529cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowListPreference shadowOf(ListPreference instance) {
530cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowListPreference) shadowOf_(instance);
5311fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
5321fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
533cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowListView shadowOf(ListView instance) {
534cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowListView) shadowOf_(instance);
5351fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
5361fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
537433b46be67768332f764eab6879e0649993d79e3Christian Williams    public static ShadowLocationManager shadowOf(LocationManager instance) {
538433b46be67768332f764eab6879e0649993d79e3Christian Williams        return (ShadowLocationManager) shadowOf_(instance);
5391fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
5401fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
541cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowLooper shadowOf(Looper instance) {
542cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowLooper) shadowOf_(instance);
5431fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
5441fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams
545cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowMatrix shadowOf(Matrix other) {
546cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowMatrix) Robolectric.shadowOf_(other);
54728307faed142337b147ba17851e24ad3535f36e4Glenn Jahnke & Michael Haddad    }
54828307faed142337b147ba17851e24ad3535f36e4Glenn Jahnke & Michael Haddad
549cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowMediaPlayer shadowOf(MediaPlayer instance) {
550cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowMediaPlayer) shadowOf_(instance);
551a739b57a6b1a99f14d586f609f0f62f48b8e2284Ian Fisher & Tyler Schultz    }
552a739b57a6b1a99f14d586f609f0f62f48b8e2284Ian Fisher & Tyler Schultz
553cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowMediaRecorder shadowOf(MediaRecorder instance) {
554cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowMediaRecorder) shadowOf_(instance);
555e7a41c9b39233781c97dd599ff61024f0510e308Christian Williams    }
556adfaceabbda4c8c51f24a0def8926075bd7306adChristian Williams
557b539366073ccb47433de7191dbbf519ed4ab2d8fPhil Goodwin    public static ShadowMenuInflater shadowOf(MenuInflater instance) {
558b539366073ccb47433de7191dbbf519ed4ab2d8fPhil Goodwin        return (ShadowMenuInflater) shadowOf_(instance);
559b539366073ccb47433de7191dbbf519ed4ab2d8fPhil Goodwin    }
560b539366073ccb47433de7191dbbf519ed4ab2d8fPhil Goodwin
561cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowMotionEvent shadowOf(MotionEvent other) {
562cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowMotionEvent) Robolectric.shadowOf_(other);
563adfaceabbda4c8c51f24a0def8926075bd7306adChristian Williams    }
564adfaceabbda4c8c51f24a0def8926075bd7306adChristian Williams
565cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowNetworkInfo shadowOf(NetworkInfo instance) {
566cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowNetworkInfo) shadowOf_(instance);
5674a9aa604410e3c8f91158a4caa5700f45a22eb47Christian Williams    }
568e7a41c9b39233781c97dd599ff61024f0510e308Christian Williams
569cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowNotification shadowOf(Notification other) {
570cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowNotification) Robolectric.shadowOf_(other);
571adfaceabbda4c8c51f24a0def8926075bd7306adChristian Williams    }
572e7a41c9b39233781c97dd599ff61024f0510e308Christian Williams
573cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowNotificationManager shadowOf(NotificationManager other) {
574cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowNotificationManager) Robolectric.shadowOf_(other);
575bdb2b1d336367115dee931221ea77fe1833607daChris Van Vranken    }
576cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz
577cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowPaint shadowOf(Paint instance) {
578cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowPaint) shadowOf_(instance);
579ac32ea1c5b4b7bca81fccd0be4f5a43ae8f2a11bChris Van Vranken    }
580b970da24960c184335a2aba413e3f5bfbbed7825Chris Van Vranken
581cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowParcel shadowOf(Parcel instance) {
582cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowParcel) shadowOf_(instance);
5839893f7266e7dcc1332743887045bd69991441421Christian Williams    }
584f96b9a1f17d47e48d1f5f8e29b4ed7ffccc739abPhil Goodwin & Tyler Schultz
585cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowPasswordTransformationMethod shadowOf(PasswordTransformationMethod instance) {
586cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowPasswordTransformationMethod) shadowOf_(instance);
587b574da97569d2d098d0aaebbb947bffa8514a4f7Michael Portuesi    }
5889893f7266e7dcc1332743887045bd69991441421Christian Williams
589cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowPath shadowOf(Path instance) {
590cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowPath) shadowOf_(instance);
59128dd1fc86f58b35b79e2fedc13f5b26f600a9a6aMichael Portuesi    }
592f96b9a1f17d47e48d1f5f8e29b4ed7ffccc739abPhil Goodwin & Tyler Schultz
593cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowPendingIntent shadowOf(PendingIntent instance) {
594cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowPendingIntent) shadowOf_(instance);
5953a99d4817b65b7eb0a9f44486072dbf43fdb2144Michael Portuesi    }
596f96b9a1f17d47e48d1f5f8e29b4ed7ffccc739abPhil Goodwin & Tyler Schultz
597cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowPowerManager shadowOf(PowerManager instance) {
598cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowPowerManager) shadowOf_(instance);
5999893f7266e7dcc1332743887045bd69991441421Christian Williams    }
6009893f7266e7dcc1332743887045bd69991441421Christian Williams
601cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowPreference shadowOf(Preference instance) {
602cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowPreference) shadowOf_(instance);
60331af8607e2c7da6ba8708f57c4b67b6b4aaad921Michael Portuesi    }
604f96b9a1f17d47e48d1f5f8e29b4ed7ffccc739abPhil Goodwin & Tyler Schultz
605cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowPreferenceActivity shadowOf(PreferenceActivity instance) {
606cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowPreferenceActivity) shadowOf_(instance);
60731af8607e2c7da6ba8708f57c4b67b6b4aaad921Michael Portuesi    }
6089893f7266e7dcc1332743887045bd69991441421Christian Williams
609cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowPreferenceCategory shadowOf(PreferenceCategory instance) {
610cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowPreferenceCategory) shadowOf_(instance);
611cf37f66c9bcbf0b25b879fbb78c9442c9101c7acRich Humphrey    }
61240c6251719cccc0a84ae99c976d2836b14374ce6Christian Williams
613cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowPreferenceGroup shadowOf(PreferenceGroup instance) {
614cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowPreferenceGroup) shadowOf_(instance);
6155480630a30500f34f6e03ed218d80f5ad843ed87Rich Humphrey    }
6165480630a30500f34f6e03ed218d80f5ad843ed87Rich Humphrey
617cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowPreferenceScreen shadowOf(PreferenceScreen instance) {
618cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowPreferenceScreen) shadowOf_(instance);
61931af8607e2c7da6ba8708f57c4b67b6b4aaad921Michael Portuesi    }
620f96b9a1f17d47e48d1f5f8e29b4ed7ffccc739abPhil Goodwin & Tyler Schultz
621cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowProgressBar shadowOf(ProgressBar instance) {
622cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowProgressBar) shadowOf_(instance);
62324f155944b10583afd970905e5dbe0acdfc9e0efPhil Goodwin & Tyler Schultz    }
62424f155944b10583afd970905e5dbe0acdfc9e0efPhil Goodwin & Tyler Schultz
625cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowProgressDialog shadowOf(ProgressDialog instance) {
626cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowProgressDialog) shadowOf_(instance);
627cf37f66c9bcbf0b25b879fbb78c9442c9101c7acRich Humphrey    }
628cf37f66c9bcbf0b25b879fbb78c9442c9101c7acRich Humphrey
629cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowRect shadowOf(Rect instance) {
630cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowRect) shadowOf_(instance);
631cf37f66c9bcbf0b25b879fbb78c9442c9101c7acRich Humphrey    }
632cf37f66c9bcbf0b25b879fbb78c9442c9101c7acRich Humphrey
633cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowRatingBar shadowOf(RatingBar instance) {
634cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowRatingBar) shadowOf_(instance);
635ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz    }
636ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
637cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowRemoteViews shadowOf(RemoteViews instance) {
638cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowRemoteViews) shadowOf_(instance);
639b01474a3329222965d31068f5c33e59c6e6aa6a4Josh Lauer & Christian Williams    }
640b01474a3329222965d31068f5c33e59c6e6aa6a4Josh Lauer & Christian Williams
641cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowResolveInfo shadowOf(ResolveInfo instance) {
642cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowResolveInfo) shadowOf_(instance);
643b01474a3329222965d31068f5c33e59c6e6aa6a4Josh Lauer & Christian Williams    }
644b01474a3329222965d31068f5c33e59c6e6aa6a4Josh Lauer & Christian Williams
645cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowResourceCursorAdapter shadowOf(ResourceCursorAdapter instance) {
646cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowResourceCursorAdapter) shadowOf_(instance);
647b01474a3329222965d31068f5c33e59c6e6aa6a4Josh Lauer & Christian Williams    }
648b01474a3329222965d31068f5c33e59c6e6aa6a4Josh Lauer & Christian Williams
649cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowResources shadowOf(Resources instance) {
650cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowResources) shadowOf_(instance);
6510d21afe8a769457a7c6691bd8418a73aafb46beaJosh Lauer & Christian Williams    }
6520d21afe8a769457a7c6691bd8418a73aafb46beaJosh Lauer & Christian Williams
653cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowResultReceiver shadowOf(ResultReceiver instance) {
654cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowResultReceiver) shadowOf_(instance);
655d4e5d32b81cae2114f66739beaac6fe1ceeead0dJosh Lauer & Christian Williams    }
656d4e5d32b81cae2114f66739beaac6fe1ceeead0dJosh Lauer & Christian Williams
657cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowSeekBar shadowOf(SeekBar instance) {
658cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowSeekBar) shadowOf_(instance);
65907a3254138fdfe62b70c194b458879c51bea72b4Phil Goodwin    }
66007a3254138fdfe62b70c194b458879c51bea72b4Phil Goodwin
661cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowSensorManager shadowOf(SensorManager instance) {
662cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowSensorManager) shadowOf_(instance);
66307a3254138fdfe62b70c194b458879c51bea72b4Phil Goodwin    }
66407a3254138fdfe62b70c194b458879c51bea72b4Phil Goodwin
665cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowService shadowOf(Service instance) {
666cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowService) shadowOf_(instance);
6676bdff425fce6705103662f20370c9b371ccf23adRich Humphrey    }
668ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
669cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowShapeDrawable shadowOf(ShapeDrawable instance) {
670cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowShapeDrawable) shadowOf_(instance);
671f87e94db052e8cf78eed7b08de5baa2551f4a134sorack    }
672ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
673cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowSimpleCursorAdapter shadowOf(SimpleCursorAdapter instance) {
674cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowSimpleCursorAdapter) shadowOf_(instance);
675b82ccb9a3ef511d607ca5c4238a50d78a6aeaebaRich Humphrey    }
6763efec46bd0d61f590dbffe5c91cb2580b98628feDave
6773efec46bd0d61f590dbffe5c91cb2580b98628feDave    public static ShadowSmsManager shadowOf(SmsManager instance) {
6783efec46bd0d61f590dbffe5c91cb2580b98628feDave    	return (ShadowSmsManager) shadowOf_(instance);
6793efec46bd0d61f590dbffe5c91cb2580b98628feDave    }
680ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
681cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowSQLiteCursor shadowOf(SQLiteCursor other) {
682cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowSQLiteCursor) Robolectric.shadowOf_(other);
683cb6dcc93e483e0537f8c93595bb6687b392a0d2eadriancowham    }
684ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
685cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowSQLiteDatabase shadowOf(SQLiteDatabase other) {
686cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowSQLiteDatabase) Robolectric.shadowOf_(other);
68786b7c8791d1e5bff8403ec7fe6b8bdf7b5e05bf9Zoodles    }
688ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
689cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowSQLiteOpenHelper shadowOf(SQLiteOpenHelper other) {
690cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowSQLiteOpenHelper) Robolectric.shadowOf_(other);
69186b7c8791d1e5bff8403ec7fe6b8bdf7b5e05bf9Zoodles    }
6924aaebe6f156648e1074f10aadc89f485175c3043Felix H. Dahlke
693cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowSQLiteProgram shadowOf(SQLiteProgram other) {
694cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowSQLiteProgram) Robolectric.shadowOf_(other);
695b8898598e493d4df40038a501ff77f2aa437e9efMike Grafton & Tyler Schultz    }
696b8898598e493d4df40038a501ff77f2aa437e9efMike Grafton & Tyler Schultz
697cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowSQLiteQueryBuilder shadowOf(SQLiteQueryBuilder other) {
698cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowSQLiteQueryBuilder) Robolectric.shadowOf_(other);
699b8898598e493d4df40038a501ff77f2aa437e9efMike Grafton & Tyler Schultz    }
700b8898598e493d4df40038a501ff77f2aa437e9efMike Grafton & Tyler Schultz
701cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowSQLiteStatement shadowOf(SQLiteStatement other) {
702cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowSQLiteStatement) Robolectric.shadowOf_(other);
703b8898598e493d4df40038a501ff77f2aa437e9efMike Grafton & Tyler Schultz    }
704b8898598e493d4df40038a501ff77f2aa437e9efMike Grafton & Tyler Schultz
705cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowSslErrorHandler shadowOf(SslErrorHandler instance) {
706cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowSslErrorHandler) shadowOf_(instance);
7074aaebe6f156648e1074f10aadc89f485175c3043Felix H. Dahlke    }
708284a307f028fc1b9c6175a28b60280bc53b5dbe6adriancowham
709284a307f028fc1b9c6175a28b60280bc53b5dbe6adriancowham    public static ShadowStateListDrawable shadowOf(StateListDrawable instance) {
710284a307f028fc1b9c6175a28b60280bc53b5dbe6adriancowham    	return (ShadowStateListDrawable) shadowOf_(instance);
711284a307f028fc1b9c6175a28b60280bc53b5dbe6adriancowham    }
712ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
713cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowTabHost shadowOf(TabHost instance) {
714cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowTabHost) shadowOf_(instance);
7151047b8740177c264e807a91bd6beeb09a502f6feDavid Farber & Lowell Kirsh    }
716ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
717cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowTabSpec shadowOf(TabHost.TabSpec instance) {
718cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowTabSpec) shadowOf_(instance);
719ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz    }
720e7a2156a30e8d4f3409f7a2b1d6a5e656423b315Graeme Duncan
721cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowTelephonyManager shadowOf(TelephonyManager instance) {
722cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowTelephonyManager) shadowOf_(instance);
7230dabe713bf2d78df246d9cff18ed11363491a2acAdam Cohen-Rose    }
724ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
725cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowTextView shadowOf(TextView instance) {
726cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowTextView) shadowOf_(instance);
7270dabe713bf2d78df246d9cff18ed11363491a2acAdam Cohen-Rose    }
728ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
729cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowToast shadowOf(Toast instance) {
730cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowToast) shadowOf_(instance);
731c59af8991708feeca9cdfb028101113a79ef73f4Glenn Jahnke & Lenny Turetsky    }
732ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
733cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowView shadowOf(View instance) {
734cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowView) shadowOf_(instance);
73508fb8f8709b227d9c12f5197c1884f22137075a5adriancowham    }
736ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
737cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowViewAnimator shadowOf(ViewAnimator instance) {
738cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowViewAnimator) shadowOf_(instance);
739ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz    }
740ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
74149a4cce94ec0c54e1e90dbe74bf5b028e7b9300bPhil Plante & Ryan Richard    public static ShadowViewConfiguration shadowOf(ViewConfiguration instance) {
74249a4cce94ec0c54e1e90dbe74bf5b028e7b9300bPhil Plante & Ryan Richard        return (ShadowViewConfiguration) shadowOf_(instance);
74349a4cce94ec0c54e1e90dbe74bf5b028e7b9300bPhil Plante & Ryan Richard    }
74449a4cce94ec0c54e1e90dbe74bf5b028e7b9300bPhil Plante & Ryan Richard
745cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowViewFlipper shadowOf(ViewFlipper instance) {
746cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowViewFlipper) shadowOf_(instance);
747cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    }
748cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz
749cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowViewGroup shadowOf(ViewGroup instance) {
750cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowViewGroup) shadowOf_(instance);
751ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz    }
752ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
753ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz    public static ShadowVideoView shadowOf(VideoView instance) {
754ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz        return (ShadowVideoView) shadowOf_(instance);
755ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz    }
756ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
757cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowWebSettings shadowOf(WebSettings instance) {
758cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowWebSettings) shadowOf_(instance);
759ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz    }
760ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
761cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowWebView shadowOf(WebView instance) {
762cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowWebView) shadowOf_(instance);
763c59af8991708feeca9cdfb028101113a79ef73f4Glenn Jahnke & Lenny Turetsky    }
764cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz
765cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowWifiInfo shadowOf(WifiInfo instance) {
766cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowWifiInfo) shadowOf_(instance);
7675aab2036d99aa0bdced8c12a41a2b67a0bc8d676Dave    }
768ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz
769cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowWifiManager shadowOf(WifiManager instance) {
770cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowWifiManager) shadowOf_(instance);
771cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    }
772cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz
773cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz    public static ShadowZoomButtonsController shadowOf(ZoomButtonsController instance) {
774cfc10babf4a3957966ff2a663c0175c817a8cb22Phil Goodwin & Tyler Schultz        return (ShadowZoomButtonsController) shadowOf_(instance);
7759e562ba543ceec13e2553e043c24b15ff6d999ebPhil Goodwin & Tyler Schultz    }
7769e562ba543ceec13e2553e043c24b15ff6d999ebPhil Goodwin & Tyler Schultz
7771fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    @SuppressWarnings({"unchecked"})
778433b46be67768332f764eab6879e0649993d79e3Christian Williams    public static <P, R> P shadowOf_(R instance) {
779cee7ff89bfcb83d6cd65e6de9b7cafe2c1caf40aChristian Williams        return (P) ShadowWrangler.getInstance().shadowOf(instance);
7801fbcf7680e415c7b15a08376835385a9226e8d2bChristian Williams    }
78171d7c3bcf0400e4b81109dd785187e1a93da3cabChristian Williams
7820fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin    /**
7830fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin     * Runs any background tasks previously queued by {@link android.os.AsyncTask#execute(Object[])}.
784b539366073ccb47433de7191dbbf519ed4ab2d8fPhil Goodwin     * <p/>
7850fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin     * <p/>
7860fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin     * Note: calling this method does not pause or un-pause the scheduler.
7870fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin     */
78871d7c3bcf0400e4b81109dd785187e1a93da3cabChristian Williams    public static void runBackgroundTasks() {
7890fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin        getBackgroundScheduler().advanceBy(0);
79071d7c3bcf0400e4b81109dd785187e1a93da3cabChristian Williams    }
79171d7c3bcf0400e4b81109dd785187e1a93da3cabChristian Williams
7920fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin    /**
7930fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin     * Runs any immediately runnable tasks previously queued on the UI thread,
7940fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin     * e.g. by {@link Activity#runOnUiThread(Runnable)} or {@link android.os.AsyncTask#onPostExecute(Object)}.
795b539366073ccb47433de7191dbbf519ed4ab2d8fPhil Goodwin     * <p/>
7960fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin     * <p/>
7970fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin     * Note: calling this method does not pause or un-pause the scheduler.
7980fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin     */
79971d7c3bcf0400e4b81109dd785187e1a93da3cabChristian Williams    public static void runUiThreadTasks() {
800a4f7d50f8e6f12d541421383544fe16c185e4bbcPhil Goodwin & Tyler Schultz        getUiThreadScheduler().advanceBy(0);
80171d7c3bcf0400e4b81109dd785187e1a93da3cabChristian Williams    }
802cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz
803e9cf86cff984930a892bcad1fa1b410a47cd2d90Joe Moore & Ryan Richard    public static void runUiThreadTasksIncludingDelayedTasks() {
804e9cf86cff984930a892bcad1fa1b410a47cd2d90Joe Moore & Ryan Richard        getUiThreadScheduler().advanceToLastPostedRunnable();
805e9cf86cff984930a892bcad1fa1b410a47cd2d90Joe Moore & Ryan Richard    }
806e9cf86cff984930a892bcad1fa1b410a47cd2d90Joe Moore & Ryan Richard
807cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz    /**
808bd9537bd36434865d4d25ef332bd388d39a51e34Christian Williams & Phil Goodwin     * Sets up an HTTP response to be returned by calls to Apache's {@code HttpClient} implementers.
809cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz     *
810b539366073ccb47433de7191dbbf519ed4ab2d8fPhil Goodwin     * @param statusCode   the status code of the response
811cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz     * @param responseBody the body of the response
81250462c4dff2d5f6aa1f5f9683935f5f0270c8a2dJan Berkel     * @param headers      optional headers for the request
813cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz     */
81450462c4dff2d5f6aa1f5f9683935f5f0270c8a2dJan Berkel    public static void addPendingHttpResponse(int statusCode, String responseBody, Header... headers) {
81550462c4dff2d5f6aa1f5f9683935f5f0270c8a2dJan Berkel        getFakeHttpLayer().addPendingHttpResponse(statusCode, responseBody, headers);
816cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz    }
817cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz
818cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz    /**
819bd9537bd36434865d4d25ef332bd388d39a51e34Christian Williams & Phil Goodwin     * Sets up an HTTP response to be returned by calls to Apache's {@code HttpClient} implementers.
820cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz     *
8216f34840c49a26f54f62ead83509e3f64bed7e0cfNeal Sanche     * @param statusCode   the status code of the response
8226f34840c49a26f54f62ead83509e3f64bed7e0cfNeal Sanche     * @param responseBody the body of the response
823ae2c488f7dcf2d348d8792f23a0596b43e9da75eLenny Turetsky & Tyler Schultz     * @param contentType  the contentType of the response
82450462c4dff2d5f6aa1f5f9683935f5f0270c8a2dJan Berkel     * @deprecated         use {@link #addPendingHttpResponse(int, String, Header...)} instead
8256f34840c49a26f54f62ead83509e3f64bed7e0cfNeal Sanche     */
82639a416145e85c7008805ef493b2d61f66d669158Tyler Schultz    public static void addPendingHttpResponseWithContentType(int statusCode, String responseBody, Header contentType) {
82750462c4dff2d5f6aa1f5f9683935f5f0270c8a2dJan Berkel        getFakeHttpLayer().addPendingHttpResponse(statusCode, responseBody, contentType);
8286f34840c49a26f54f62ead83509e3f64bed7e0cfNeal Sanche    }
8296f34840c49a26f54f62ead83509e3f64bed7e0cfNeal Sanche
8306f34840c49a26f54f62ead83509e3f64bed7e0cfNeal Sanche    /**
8316f34840c49a26f54f62ead83509e3f64bed7e0cfNeal Sanche     * Sets up an HTTP response to be returned by calls to Apache's {@code HttpClient} implementers.
8326f34840c49a26f54f62ead83509e3f64bed7e0cfNeal Sanche     *
833cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz     * @param httpResponse the response
834cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz     */
835b2fea8dc6ecf427c1e620148946b6fd83a0bd210Phil Goodwin & Tyler Schultz    public static void addPendingHttpResponse(HttpResponse httpResponse) {
836f91a118112ae13d39251dd3c09f1d85d33283ba1Christian Williams & Phil Goodwin        getFakeHttpLayer().addPendingHttpResponse(httpResponse);
837cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz    }
838cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz
839cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz    /**
8407cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     * Accessor to obtain HTTP requests made during the current test in the order in which they were made.
841cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz     *
842cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz     * @param index index of the request to retrieve.
843cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz     * @return the requested request.
844cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz     */
845b2fea8dc6ecf427c1e620148946b6fd83a0bd210Phil Goodwin & Tyler Schultz    public static HttpRequest getSentHttpRequest(int index) {
846b2fea8dc6ecf427c1e620148946b6fd83a0bd210Phil Goodwin & Tyler Schultz        return ShadowDefaultRequestDirector.getSentHttpRequest(index);
847cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz    }
848cf8438f6160ad20fcd8afc57485b35166bec4a2bPhil Goodwin & Tyler Schultz
849f7591628cda8719684f21aa809a5e4ddc634ec56Phil Goodwin & Rick Kawala    public static HttpRequest getLatestSentHttpRequest() {
850f7591628cda8719684f21aa809a5e4ddc634ec56Phil Goodwin & Rick Kawala        return ShadowDefaultRequestDirector.getLatestSentHttpRequest();
851f7591628cda8719684f21aa809a5e4ddc634ec56Phil Goodwin & Rick Kawala    }
852f7591628cda8719684f21aa809a5e4ddc634ec56Phil Goodwin & Rick Kawala
8537cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    /**
8542399fd1c2f5ff65d329717361082957d309f7314Alexander Murmann & Jesse Toth     * Accessor to find out if HTTP requests were made during the current test.
8552399fd1c2f5ff65d329717361082957d309f7314Alexander Murmann & Jesse Toth     *
8562399fd1c2f5ff65d329717361082957d309f7314Alexander Murmann & Jesse Toth     * @return whether a request was made.
8572399fd1c2f5ff65d329717361082957d309f7314Alexander Murmann & Jesse Toth     */
8582399fd1c2f5ff65d329717361082957d309f7314Alexander Murmann & Jesse Toth    public static boolean httpRequestWasMade() {
8592399fd1c2f5ff65d329717361082957d309f7314Alexander Murmann & Jesse Toth        return getShadowApplication().getFakeHttpLayer().hasRequestInfos();
8602399fd1c2f5ff65d329717361082957d309f7314Alexander Murmann & Jesse Toth    }
8612399fd1c2f5ff65d329717361082957d309f7314Alexander Murmann & Jesse Toth
8625ed9c8041b5f927c930d50edef58c5378d12f89cAlexander Murmann & Phil Goodwin    public static boolean httpRequestWasMade(String uri) {
8635ed9c8041b5f927c930d50edef58c5378d12f89cAlexander Murmann & Phil Goodwin        return getShadowApplication().getFakeHttpLayer().hasRequestMatchingRule(new FakeHttpLayer.UriRequestMatcher(uri));
8645ed9c8041b5f927c930d50edef58c5378d12f89cAlexander Murmann & Phil Goodwin    }
8655ed9c8041b5f927c930d50edef58c5378d12f89cAlexander Murmann & Phil Goodwin
8662399fd1c2f5ff65d329717361082957d309f7314Alexander Murmann & Jesse Toth    /**
8677cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     * Accessor to obtain metadata for an HTTP request made during the current test in the order in which they were made.
8687cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     *
8697cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     * @param index index of the request to retrieve.
8707cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     * @return the requested request metadata.
8717cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     */
8727cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    public static HttpRequestInfo getSentHttpRequestInfo(int index) {
8737cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin        return ShadowDefaultRequestDirector.getSentHttpRequestInfo(index);
8747cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    }
8757cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin
8767cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    /**
8777cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     * Adds an HTTP response rule. The response will be returned when the rule is matched.
8787cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     *
879b539366073ccb47433de7191dbbf519ed4ab2d8fPhil Goodwin     * @param method   method to match.
880b539366073ccb47433de7191dbbf519ed4ab2d8fPhil Goodwin     * @param uri      uri to match.
8817cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     * @param response response to return when a match is found.
8827cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     */
8837cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    public static void addHttpResponseRule(String method, String uri, HttpResponse response) {
884f91a118112ae13d39251dd3c09f1d85d33283ba1Christian Williams & Phil Goodwin        getFakeHttpLayer().addHttpResponseRule(method, uri, response);
8857cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    }
8867cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin
8877cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    /**
8887cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     * Adds an HTTP response rule with a default method of GET. The response will be returned when the rule is matched.
8897cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     *
890b539366073ccb47433de7191dbbf519ed4ab2d8fPhil Goodwin     * @param uri      uri to match.
8917cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     * @param response response to return when a match is found.
8927cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     */
8937cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    public static void addHttpResponseRule(String uri, HttpResponse response) {
894f91a118112ae13d39251dd3c09f1d85d33283ba1Christian Williams & Phil Goodwin        getFakeHttpLayer().addHttpResponseRule(uri, response);
8957cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    }
8967cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin
8977cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    /**
8987cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     * Adds an HTTP response rule. The response will be returned when the rule is matched.
8997cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     *
900b539366073ccb47433de7191dbbf519ed4ab2d8fPhil Goodwin     * @param uri      uri to match.
9017cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     * @param response response to return when a match is found.
9027cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     */
9037cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    public static void addHttpResponseRule(String uri, String response) {
904f91a118112ae13d39251dd3c09f1d85d33283ba1Christian Williams & Phil Goodwin        getFakeHttpLayer().addHttpResponseRule(uri, response);
9057cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    }
9067cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin
9077cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    /**
9087cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     * Adds an HTTP response rule. The response will be returned when the rule is matched.
9097cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     *
9107cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     * @param requestMatcher custom {@code RequestMatcher}.
911b539366073ccb47433de7191dbbf519ed4ab2d8fPhil Goodwin     * @param response       response to return when a match is found.
9127cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin     */
9134105051dc6b4e1d67766d1ad886bd3b191f8a68fChristian Williams    public static void addHttpResponseRule(RequestMatcher requestMatcher, HttpResponse response) {
914f91a118112ae13d39251dd3c09f1d85d33283ba1Christian Williams & Phil Goodwin        getFakeHttpLayer().addHttpResponseRule(requestMatcher, response);
915f91a118112ae13d39251dd3c09f1d85d33283ba1Christian Williams & Phil Goodwin    }
916f91a118112ae13d39251dd3c09f1d85d33283ba1Christian Williams & Phil Goodwin
9172669b6bbfad4fc63460249729f6d7ae80b002a55Lowell Kirsh    /**
9182669b6bbfad4fc63460249729f6d7ae80b002a55Lowell Kirsh     * Adds an HTTP response rule. For each time the rule is matched, responses will be shifted
9192669b6bbfad4fc63460249729f6d7ae80b002a55Lowell Kirsh     * off the list and returned. When all responses have been given and the rule is matched again,
9202669b6bbfad4fc63460249729f6d7ae80b002a55Lowell Kirsh     * an exception will be thrown.
9212669b6bbfad4fc63460249729f6d7ae80b002a55Lowell Kirsh     *
9222669b6bbfad4fc63460249729f6d7ae80b002a55Lowell Kirsh     * @param requestMatcher custom {@code RequestMatcher}.
9232669b6bbfad4fc63460249729f6d7ae80b002a55Lowell Kirsh     * @param responses      responses to return in order when a match is found.
9242669b6bbfad4fc63460249729f6d7ae80b002a55Lowell Kirsh     */
9252669b6bbfad4fc63460249729f6d7ae80b002a55Lowell Kirsh    public static void addHttpResponseRule(RequestMatcher requestMatcher, List<? extends HttpResponse> responses) {
9262669b6bbfad4fc63460249729f6d7ae80b002a55Lowell Kirsh        getFakeHttpLayer().addHttpResponseRule(requestMatcher, responses);
9272669b6bbfad4fc63460249729f6d7ae80b002a55Lowell Kirsh    }
9282669b6bbfad4fc63460249729f6d7ae80b002a55Lowell Kirsh
929f91a118112ae13d39251dd3c09f1d85d33283ba1Christian Williams & Phil Goodwin    public static FakeHttpLayer getFakeHttpLayer() {
9307d446513cda09628ec24023cfdebeca847700b52Christian Williams & Phil Goodwin        return getShadowApplication().getFakeHttpLayer();
9317cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    }
9327cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin
933d76cb3959b31f5def82d0476cc114cc5da06a7a1Phil Goodwin    public static void setDefaultHttpResponse(int statusCode, String responseBody) {
934d76cb3959b31f5def82d0476cc114cc5da06a7a1Phil Goodwin        getFakeHttpLayer().setDefaultHttpResponse(statusCode, responseBody);
935d76cb3959b31f5def82d0476cc114cc5da06a7a1Phil Goodwin    }
936d76cb3959b31f5def82d0476cc114cc5da06a7a1Phil Goodwin
9377cf93e04b5b478b64f757a4b86ed75e28ae612c1Christian Williams & Phil Goodwin    public static void setDefaultHttpResponse(HttpResponse defaultHttpResponse) {
938f91a118112ae13d39251dd3c09f1d85d33283ba1Christian Williams & Phil Goodwin        getFakeHttpLayer().setDefaultHttpResponse(defaultHttpResponse);
939b2fea8dc6ecf427c1e620148946b6fd83a0bd210Phil Goodwin & Tyler Schultz    }
9405dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz
941b539795cdd8f6be1b0b01527905a31faea03242cRob Dickerson    public static void clearHttpResponseRules() {
942b539795cdd8f6be1b0b01527905a31faea03242cRob Dickerson        getFakeHttpLayer().clearHttpResponseRules();
943b539795cdd8f6be1b0b01527905a31faea03242cRob Dickerson    }
944b539795cdd8f6be1b0b01527905a31faea03242cRob Dickerson
94554c8f286408ad7e791f9468dcdc2e18cff1681e4Glenn Jahnke & Rick Kawala    public static void clearPendingHttpResponses() {
94654c8f286408ad7e791f9468dcdc2e18cff1681e4Glenn Jahnke & Rick Kawala        getFakeHttpLayer().clearPendingHttpResponses();
94754c8f286408ad7e791f9468dcdc2e18cff1681e4Glenn Jahnke & Rick Kawala    }
94854c8f286408ad7e791f9468dcdc2e18cff1681e4Glenn Jahnke & Rick Kawala
9495dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz    public static void pauseLooper(Looper looper) {
9505dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz        ShadowLooper.pauseLooper(looper);
9515dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz    }
9525dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz
9535dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz    public static void unPauseLooper(Looper looper) {
9545dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz        ShadowLooper.unPauseLooper(looper);
9555dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz    }
9565dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz
9575dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz    public static void pauseMainLooper() {
9585dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz        ShadowLooper.pauseMainLooper();
9595dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz    }
9605dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz
9615dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz    public static void unPauseMainLooper() {
9625dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz        ShadowLooper.unPauseMainLooper();
9635dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz    }
9645dab156481a91717311fa47ff7e27a54865abfa3Phil Goodwin & Tyler Schultz
96544edf424f14a67d7a35501a258a9b96d9c943ccfAlexander Murmann & Phil Goodwin    public static void idleMainLooper(int interval) {
96644edf424f14a67d7a35501a258a9b96d9c943ccfAlexander Murmann & Phil Goodwin        ShadowLooper.idleMainLooper(interval);
96744edf424f14a67d7a35501a258a9b96d9c943ccfAlexander Murmann & Phil Goodwin    }
96844edf424f14a67d7a35501a258a9b96d9c943ccfAlexander Murmann & Phil Goodwin
969a4f7d50f8e6f12d541421383544fe16c185e4bbcPhil Goodwin & Tyler Schultz    public static Scheduler getUiThreadScheduler() {
970a4f7d50f8e6f12d541421383544fe16c185e4bbcPhil Goodwin & Tyler Schultz        return shadowOf(Looper.getMainLooper()).getScheduler();
971a4f7d50f8e6f12d541421383544fe16c185e4bbcPhil Goodwin & Tyler Schultz    }
9727d446513cda09628ec24023cfdebeca847700b52Christian Williams & Phil Goodwin
9730fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin    public static Scheduler getBackgroundScheduler() {
9740fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin        return getShadowApplication().getBackgroundScheduler();
9750fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin    }
9760fe1965a36c508fb5b9fa4c8d0caa2d30540f2ccChristian Williams & Phil Goodwin
9777d446513cda09628ec24023cfdebeca847700b52Christian Williams & Phil Goodwin    public static ShadowApplication getShadowApplication() {
9787d446513cda09628ec24023cfdebeca847700b52Christian Williams & Phil Goodwin        return shadowOf(Robolectric.application);
9797d446513cda09628ec24023cfdebeca847700b52Christian Williams & Phil Goodwin    }
980c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams
981db121a3768da9bd5f9ac210a0b1fc368acb85824Ryan Richard    public static void setDisplayMetricsDensity(float densityMultiplier) {
982db121a3768da9bd5f9ac210a0b1fc368acb85824Ryan Richard        shadowOf(getShadowApplication().getResources()).setDensity(densityMultiplier);
983db121a3768da9bd5f9ac210a0b1fc368acb85824Ryan Richard    }
984db121a3768da9bd5f9ac210a0b1fc368acb85824Ryan Richard
985c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams    /**
986c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams     * Calls {@code performClick()} on a {@code View} after ensuring that it and its ancestors are visible and that it
987c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams     * is enabled.
988c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams     *
989c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams     * @param view the view to click on
990c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams     * @return true if {@code View.OnClickListener}s were found and fired, false otherwise.
991c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams     * @throws RuntimeException if the preconditions are not met.
992c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams     */
993c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams    public static boolean clickOn(View view) {
994c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams        return shadowOf(view).checkedPerformClick();
995c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams    }
996c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams
997c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams    public static String visualize(View view) {
998c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams        Canvas canvas = new Canvas();
999c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams        view.draw(canvas);
1000c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams        return shadowOf(canvas).getDescription();
1001c0ff00024bd89540c9a5bac5c88b4da4b38f0456Josh Lauer & Christian Williams    }
1002c80983d2a778c62de05423980ba943217e2275bcChristian Williams & Phil Goodwin
1003c80983d2a778c62de05423980ba943217e2275bcChristian Williams & Phil Goodwin    public static String visualize(Canvas canvas) {
1004c80983d2a778c62de05423980ba943217e2275bcChristian Williams & Phil Goodwin        return shadowOf(canvas).getDescription();
1005c80983d2a778c62de05423980ba943217e2275bcChristian Williams & Phil Goodwin    }
1006c80983d2a778c62de05423980ba943217e2275bcChristian Williams & Phil Goodwin
1007c80983d2a778c62de05423980ba943217e2275bcChristian Williams & Phil Goodwin    public static String visualize(Bitmap bitmap) {
1008c80983d2a778c62de05423980ba943217e2275bcChristian Williams & Phil Goodwin        return shadowOf(bitmap).getDescription();
1009c80983d2a778c62de05423980ba943217e2275bcChristian Williams & Phil Goodwin    }
10102ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard    /**
10112ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard     * Reflection helper methods.
10122ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard     */
10132ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard    public static class Reflection {
10142ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard        public static <T> T newInstanceOf(Class<T> clazz) {
10152ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard            return Robolectric.newInstanceOf(clazz);
10162ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard        }
10172ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard
10182ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard        public static Object newInstanceOf(String className) {
10192ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard            return Robolectric.newInstanceOf(className);
10202ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard        }
10212ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard
10222ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard        public static void setFinalStaticField(Class classWhichContainsField, String fieldName, Object newValue) {
10232ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard            try {
10242ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard                Field field = classWhichContainsField.getField(fieldName);
10252ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard                field.setAccessible(true);
10262ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard
10272ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard                Field modifiersField = Field.class.getDeclaredField("modifiers");
10282ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard                modifiersField.setAccessible(true);
10292ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard                modifiersField.setInt(field, field.getModifiers() & ~Modifier.FINAL);
10302ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard
10312ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard                field.set(null, newValue);
10322ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard            } catch (NoSuchFieldException e) {
10332ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard                throw new RuntimeException(e);
10342ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard            } catch (IllegalAccessException e) {
10352ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard                throw new RuntimeException(e);
10362ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard            }
10372ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard        }
10382ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard    }
10392ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard
10400b378afcde0200166e546c46a7642015accfce49Christian Williams & Ian Fisher}
1041