MockContext.java revision e0e413e2b17a0164e15c77f4ab51b3166f9111d2
1/*
2 * Copyright (C) 2007 The Android Open Source Project
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 *      http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
17package android.test.mock;
18
19import android.annotation.SystemApi;
20import android.content.ComponentName;
21import android.content.ContentResolver;
22import android.content.Context;
23import android.content.Intent;
24import android.content.IntentFilter;
25import android.content.BroadcastReceiver;
26import android.content.IntentSender;
27import android.content.ServiceConnection;
28import android.content.SharedPreferences;
29import android.content.pm.ApplicationInfo;
30import android.content.pm.PackageManager;
31import android.content.res.AssetManager;
32import android.content.res.Configuration;
33import android.content.res.Resources;
34import android.database.DatabaseErrorHandler;
35import android.database.sqlite.SQLiteDatabase;
36import android.graphics.Bitmap;
37import android.graphics.drawable.Drawable;
38import android.net.Uri;
39import android.os.Bundle;
40import android.os.Handler;
41import android.os.IBinder;
42import android.os.Looper;
43import android.os.UserHandle;
44import android.view.DisplayAdjustments;
45import android.view.Display;
46
47import java.io.File;
48import java.io.FileInputStream;
49import java.io.FileNotFoundException;
50import java.io.FileOutputStream;
51import java.io.IOException;
52import java.io.InputStream;
53
54/**
55 * A mock {@link android.content.Context} class.  All methods are non-functional and throw
56 * {@link java.lang.UnsupportedOperationException}.  You can use this to inject other dependencies,
57 * mocks, or monitors into the classes you are testing.
58 */
59public class MockContext extends Context {
60
61    @Override
62    public AssetManager getAssets() {
63        throw new UnsupportedOperationException();
64    }
65
66    @Override
67    public Resources getResources() {
68        throw new UnsupportedOperationException();
69    }
70
71    @Override
72    public PackageManager getPackageManager() {
73        throw new UnsupportedOperationException();
74    }
75
76    @Override
77    public ContentResolver getContentResolver() {
78        throw new UnsupportedOperationException();
79    }
80
81    @Override
82    public Looper getMainLooper() {
83        throw new UnsupportedOperationException();
84    }
85
86    @Override
87    public Context getApplicationContext() {
88        throw new UnsupportedOperationException();
89    }
90
91    @Override
92    public void setTheme(int resid) {
93        throw new UnsupportedOperationException();
94    }
95
96    @Override
97    public Resources.Theme getTheme() {
98        throw new UnsupportedOperationException();
99    }
100
101    @Override
102    public ClassLoader getClassLoader() {
103        throw new UnsupportedOperationException();
104    }
105
106    @Override
107    public String getPackageName() {
108        throw new UnsupportedOperationException();
109    }
110
111    /** @hide */
112    @Override
113    public String getBasePackageName() {
114        throw new UnsupportedOperationException();
115    }
116
117    /** @hide */
118    @Override
119    public String getOpPackageName() {
120        throw new UnsupportedOperationException();
121    }
122
123    @Override
124    public ApplicationInfo getApplicationInfo() {
125        throw new UnsupportedOperationException();
126    }
127
128    @Override
129    public String getPackageResourcePath() {
130        throw new UnsupportedOperationException();
131    }
132
133    @Override
134    public String getPackageCodePath() {
135        throw new UnsupportedOperationException();
136    }
137
138    @Override
139    public SharedPreferences getSharedPreferences(String name, int mode) {
140        throw new UnsupportedOperationException();
141    }
142
143    @Override
144    public SharedPreferences getSharedPreferences(File file, int mode) {
145        throw new UnsupportedOperationException();
146    }
147
148    @Override
149    public FileInputStream openFileInput(String name) throws FileNotFoundException {
150        throw new UnsupportedOperationException();
151    }
152
153    @Override
154    public FileOutputStream openFileOutput(String name, int mode) throws FileNotFoundException {
155        throw new UnsupportedOperationException();
156    }
157
158    @Override
159    public boolean deleteFile(String name) {
160        throw new UnsupportedOperationException();
161    }
162
163    @Override
164    public File getFileStreamPath(String name) {
165        throw new UnsupportedOperationException();
166    }
167
168    @Override
169    public File getSharedPreferencesPath(String name) {
170        throw new UnsupportedOperationException();
171    }
172
173    @Override
174    public String[] fileList() {
175        throw new UnsupportedOperationException();
176    }
177
178    @Override
179    public File getFilesDir() {
180        throw new UnsupportedOperationException();
181    }
182
183    @Override
184    public File getNoBackupFilesDir() {
185        throw new UnsupportedOperationException();
186    }
187
188    @Override
189    public File getExternalFilesDir(String type) {
190        throw new UnsupportedOperationException();
191    }
192
193    @Override
194    public File getObbDir() {
195        throw new UnsupportedOperationException();
196    }
197
198    @Override
199    public File getCacheDir() {
200        throw new UnsupportedOperationException();
201    }
202
203    @Override
204    public File getCodeCacheDir() {
205        throw new UnsupportedOperationException();
206    }
207
208    @Override
209    public File getExternalCacheDir() {
210        throw new UnsupportedOperationException();
211    }
212
213    @Override
214    public File getDir(String name, int mode) {
215        throw new UnsupportedOperationException();
216    }
217
218    @Override
219    public SQLiteDatabase openOrCreateDatabase(String file, int mode,
220            SQLiteDatabase.CursorFactory factory) {
221        throw new UnsupportedOperationException();
222    }
223
224    @Override
225    public SQLiteDatabase openOrCreateDatabase(String file, int mode,
226            SQLiteDatabase.CursorFactory factory, DatabaseErrorHandler errorHandler) {
227        throw new UnsupportedOperationException();
228    }
229
230    @Override
231    public File getDatabasePath(String name) {
232        throw new UnsupportedOperationException();
233    }
234
235    @Override
236    public String[] databaseList() {
237        throw new UnsupportedOperationException();
238    }
239
240    @Override
241    public boolean deleteDatabase(String name) {
242        throw new UnsupportedOperationException();
243    }
244
245    @Override
246    public Drawable getWallpaper() {
247        throw new UnsupportedOperationException();
248    }
249
250    @Override
251    public Drawable peekWallpaper() {
252        throw new UnsupportedOperationException();
253    }
254
255    @Override
256    public int getWallpaperDesiredMinimumWidth() {
257        throw new UnsupportedOperationException();
258    }
259
260    @Override
261    public int getWallpaperDesiredMinimumHeight() {
262        throw new UnsupportedOperationException();
263    }
264
265    @Override
266    public void setWallpaper(Bitmap bitmap) throws IOException {
267        throw new UnsupportedOperationException();
268    }
269
270    @Override
271    public void setWallpaper(InputStream data) throws IOException {
272        throw new UnsupportedOperationException();
273    }
274
275    @Override
276    public void clearWallpaper() {
277        throw new UnsupportedOperationException();
278    }
279
280    @Override
281    public void startActivity(Intent intent) {
282        throw new UnsupportedOperationException();
283    }
284
285    @Override
286    public void startActivity(Intent intent, Bundle options) {
287        startActivity(intent);
288    }
289
290    @Override
291    public void startActivities(Intent[] intents) {
292        throw new UnsupportedOperationException();
293    }
294
295    @Override
296    public void startActivities(Intent[] intents, Bundle options) {
297        startActivities(intents);
298    }
299
300    @Override
301    public void startIntentSender(IntentSender intent,
302            Intent fillInIntent, int flagsMask, int flagsValues, int extraFlags)
303            throws IntentSender.SendIntentException {
304        throw new UnsupportedOperationException();
305    }
306
307    @Override
308    public void startIntentSender(IntentSender intent,
309            Intent fillInIntent, int flagsMask, int flagsValues, int extraFlags,
310            Bundle options) throws IntentSender.SendIntentException {
311        startIntentSender(intent, fillInIntent, flagsMask, flagsValues, extraFlags);
312    }
313
314    @Override
315    public void sendBroadcast(Intent intent) {
316        throw new UnsupportedOperationException();
317    }
318
319    @Override
320    public void sendBroadcast(Intent intent, String receiverPermission) {
321        throw new UnsupportedOperationException();
322    }
323
324    /** @hide */
325    @Override
326    public void sendBroadcastMultiplePermissions(Intent intent, String[] receiverPermissions) {
327        throw new UnsupportedOperationException();
328    }
329
330    /** @hide */
331    @SystemApi
332    @Override
333    public void sendBroadcast(Intent intent, String receiverPermission, Bundle options) {
334        throw new UnsupportedOperationException();
335    }
336
337    /** @hide */
338    @Override
339    public void sendBroadcast(Intent intent, String receiverPermission, int appOp) {
340        throw new UnsupportedOperationException();
341    }
342
343    @Override
344    public void sendOrderedBroadcast(Intent intent,
345            String receiverPermission) {
346        throw new UnsupportedOperationException();
347    }
348
349    @Override
350    public void sendOrderedBroadcast(Intent intent, String receiverPermission,
351            BroadcastReceiver resultReceiver, Handler scheduler, int initialCode, String initialData,
352           Bundle initialExtras) {
353        throw new UnsupportedOperationException();
354    }
355
356    /** @hide */
357    @SystemApi
358    @Override
359    public void sendOrderedBroadcast(Intent intent, String receiverPermission,
360            Bundle options, BroadcastReceiver resultReceiver, Handler scheduler, int initialCode, String initialData,
361            Bundle initialExtras) {
362        throw new UnsupportedOperationException();
363    }
364
365    /** @hide */
366    @Override
367    public void sendOrderedBroadcast(Intent intent, String receiverPermission, int appOp,
368            BroadcastReceiver resultReceiver, Handler scheduler, int initialCode, String initialData,
369           Bundle initialExtras) {
370        throw new UnsupportedOperationException();
371    }
372
373    @Override
374    public void sendBroadcastAsUser(Intent intent, UserHandle user) {
375        throw new UnsupportedOperationException();
376    }
377
378    @Override
379    public void sendBroadcastAsUser(Intent intent, UserHandle user,
380            String receiverPermission) {
381        throw new UnsupportedOperationException();
382    }
383
384    /** @hide */
385    @Override
386    public void sendBroadcastAsUser(Intent intent, UserHandle user,
387            String receiverPermission, int appOp) {
388        throw new UnsupportedOperationException();
389    }
390
391    @Override
392    public void sendOrderedBroadcastAsUser(Intent intent, UserHandle user,
393            String receiverPermission, BroadcastReceiver resultReceiver, Handler scheduler,
394            int initialCode, String initialData, Bundle initialExtras) {
395        throw new UnsupportedOperationException();
396    }
397
398    /** @hide */
399    @Override
400    public void sendOrderedBroadcastAsUser(Intent intent, UserHandle user,
401            String receiverPermission, int appOp, BroadcastReceiver resultReceiver,
402            Handler scheduler, int initialCode, String initialData, Bundle initialExtras) {
403        throw new UnsupportedOperationException();
404    }
405
406    /** @hide */
407    @Override
408    public void sendOrderedBroadcastAsUser(Intent intent, UserHandle user,
409            String receiverPermission, int appOp, Bundle options, BroadcastReceiver resultReceiver,
410            Handler scheduler, int initialCode, String initialData, Bundle initialExtras) {
411        throw new UnsupportedOperationException();
412    }
413
414    @Override
415    public void sendStickyBroadcast(Intent intent) {
416        throw new UnsupportedOperationException();
417    }
418
419    @Override
420    public void sendStickyOrderedBroadcast(Intent intent,
421            BroadcastReceiver resultReceiver, Handler scheduler, int initialCode, String initialData,
422           Bundle initialExtras) {
423        throw new UnsupportedOperationException();
424    }
425
426    @Override
427    public void removeStickyBroadcast(Intent intent) {
428        throw new UnsupportedOperationException();
429    }
430
431    @Override
432    public void sendStickyBroadcastAsUser(Intent intent, UserHandle user) {
433        throw new UnsupportedOperationException();
434    }
435
436    /** @hide */
437    @Override
438    public void sendStickyBroadcastAsUser(Intent intent, UserHandle user, Bundle options) {
439        throw new UnsupportedOperationException();
440    }
441
442    @Override
443    public void sendStickyOrderedBroadcastAsUser(Intent intent,
444            UserHandle user, BroadcastReceiver resultReceiver,
445            Handler scheduler, int initialCode, String initialData,
446            Bundle initialExtras) {
447        throw new UnsupportedOperationException();
448    }
449
450    @Override
451    public void removeStickyBroadcastAsUser(Intent intent, UserHandle user) {
452        throw new UnsupportedOperationException();
453    }
454
455    @Override
456    public Intent registerReceiver(BroadcastReceiver receiver, IntentFilter filter) {
457        throw new UnsupportedOperationException();
458    }
459
460    @Override
461    public Intent registerReceiver(BroadcastReceiver receiver, IntentFilter filter,
462            String broadcastPermission, Handler scheduler) {
463        throw new UnsupportedOperationException();
464    }
465
466    /** @hide */
467    @Override
468    public Intent registerReceiverAsUser(BroadcastReceiver receiver, UserHandle user,
469            IntentFilter filter, String broadcastPermission, Handler scheduler) {
470        throw new UnsupportedOperationException();
471    }
472
473    @Override
474    public void unregisterReceiver(BroadcastReceiver receiver) {
475        throw new UnsupportedOperationException();
476    }
477
478    @Override
479    public ComponentName startService(Intent service) {
480        throw new UnsupportedOperationException();
481    }
482
483    @Override
484    public boolean stopService(Intent service) {
485        throw new UnsupportedOperationException();
486    }
487
488    /** @hide */
489    @Override
490    public ComponentName startServiceAsUser(Intent service, UserHandle user) {
491        throw new UnsupportedOperationException();
492    }
493
494    /** @hide */
495    @Override
496    public boolean stopServiceAsUser(Intent service, UserHandle user) {
497        throw new UnsupportedOperationException();
498    }
499
500    @Override
501    public boolean bindService(Intent service, ServiceConnection conn, int flags) {
502        throw new UnsupportedOperationException();
503    }
504
505    /** @hide */
506    @Override
507    public boolean bindServiceAsUser(Intent service, ServiceConnection conn, int flags,
508            UserHandle user) {
509        throw new UnsupportedOperationException();
510    }
511
512    @Override
513    public void unbindService(ServiceConnection conn) {
514        throw new UnsupportedOperationException();
515    }
516
517    @Override
518    public boolean startInstrumentation(ComponentName className,
519            String profileFile, Bundle arguments) {
520        throw new UnsupportedOperationException();
521    }
522
523    @Override
524    public Object getSystemService(String name) {
525        throw new UnsupportedOperationException();
526    }
527
528    @Override
529    public String getSystemServiceName(Class<?> serviceClass) {
530        throw new UnsupportedOperationException();
531    }
532
533    @Override
534    public int checkPermission(String permission, int pid, int uid) {
535        throw new UnsupportedOperationException();
536    }
537
538    /** @hide */
539    @Override
540    public int checkPermission(String permission, int pid, int uid, IBinder callerToken) {
541        return checkPermission(permission, pid, uid);
542    }
543
544    @Override
545    public int checkCallingPermission(String permission) {
546        throw new UnsupportedOperationException();
547    }
548
549    @Override
550    public int checkCallingOrSelfPermission(String permission) {
551        throw new UnsupportedOperationException();
552    }
553
554    @Override
555    public int checkSelfPermission(String permission) {
556        throw new UnsupportedOperationException();
557    }
558
559    @Override
560    public void enforcePermission(
561            String permission, int pid, int uid, String message) {
562        throw new UnsupportedOperationException();
563    }
564
565    @Override
566    public void enforceCallingPermission(String permission, String message) {
567        throw new UnsupportedOperationException();
568    }
569
570    @Override
571    public void enforceCallingOrSelfPermission(String permission, String message) {
572        throw new UnsupportedOperationException();
573    }
574
575    @Override
576    public void grantUriPermission(String toPackage, Uri uri, int modeFlags) {
577        throw new UnsupportedOperationException();
578    }
579
580    @Override
581    public void revokeUriPermission(Uri uri, int modeFlags) {
582        throw new UnsupportedOperationException();
583    }
584
585    @Override
586    public int checkUriPermission(Uri uri, int pid, int uid, int modeFlags) {
587        throw new UnsupportedOperationException();
588    }
589
590    /** @hide */
591    @Override
592    public int checkUriPermission(Uri uri, int pid, int uid, int modeFlags, IBinder callerToken) {
593        return checkUriPermission(uri, pid, uid, modeFlags);
594    }
595
596    @Override
597    public int checkCallingUriPermission(Uri uri, int modeFlags) {
598        throw new UnsupportedOperationException();
599    }
600
601    @Override
602    public int checkCallingOrSelfUriPermission(Uri uri, int modeFlags) {
603        throw new UnsupportedOperationException();
604    }
605
606    @Override
607    public int checkUriPermission(Uri uri, String readPermission,
608            String writePermission, int pid, int uid, int modeFlags) {
609        throw new UnsupportedOperationException();
610    }
611
612    @Override
613    public void enforceUriPermission(
614            Uri uri, int pid, int uid, int modeFlags, String message) {
615        throw new UnsupportedOperationException();
616    }
617
618    @Override
619    public void enforceCallingUriPermission(
620            Uri uri, int modeFlags, String message) {
621        throw new UnsupportedOperationException();
622    }
623
624    @Override
625    public void enforceCallingOrSelfUriPermission(
626            Uri uri, int modeFlags, String message) {
627        throw new UnsupportedOperationException();
628    }
629
630    public void enforceUriPermission(
631            Uri uri, String readPermission, String writePermission,
632            int pid, int uid, int modeFlags, String message) {
633        throw new UnsupportedOperationException();
634    }
635
636    @Override
637    public Context createPackageContext(String packageName, int flags)
638            throws PackageManager.NameNotFoundException {
639        throw new UnsupportedOperationException();
640    }
641
642    /** {@hide} */
643    @Override
644    public Context createApplicationContext(ApplicationInfo application, int flags)
645            throws PackageManager.NameNotFoundException {
646        return null;
647    }
648
649    /** {@hide} */
650    @Override
651    public Context createPackageContextAsUser(String packageName, int flags, UserHandle user)
652            throws PackageManager.NameNotFoundException {
653        throw new UnsupportedOperationException();
654    }
655
656    /** {@hide} */
657    @Override
658    public int getUserId() {
659        throw new UnsupportedOperationException();
660    }
661
662    @Override
663    public Context createConfigurationContext(Configuration overrideConfiguration) {
664        throw new UnsupportedOperationException();
665    }
666
667    @Override
668    public Context createDisplayContext(Display display) {
669        throw new UnsupportedOperationException();
670    }
671
672    @Override
673    public boolean isRestricted() {
674        throw new UnsupportedOperationException();
675    }
676
677    /** @hide */
678    @Override
679    public DisplayAdjustments getDisplayAdjustments(int displayId) {
680        throw new UnsupportedOperationException();
681    }
682
683    @Override
684    public File[] getExternalFilesDirs(String type) {
685        throw new UnsupportedOperationException();
686    }
687
688    @Override
689    public File[] getObbDirs() {
690        throw new UnsupportedOperationException();
691    }
692
693    @Override
694    public File[] getExternalCacheDirs() {
695        throw new UnsupportedOperationException();
696    }
697
698    @Override
699    public File[] getExternalMediaDirs() {
700        throw new UnsupportedOperationException();
701    }
702
703    @Override
704    public Context createDeviceEncryptedContext(Context context) {
705        throw new UnsupportedOperationException();
706    }
707
708    @Override
709    public Context createCredentialEncryptedContext(Context context) {
710        throw new UnsupportedOperationException();
711    }
712
713    @Override
714    public boolean isDeviceEncrypted() {
715        throw new UnsupportedOperationException();
716    }
717
718    @Override
719    public boolean isCredentialEncrypted() {
720        throw new UnsupportedOperationException();
721    }
722}
723