MockContext.java revision fd854ee58c5d56f84047007ead9f88a767ae956f
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 /** @hide */ 134 @Override 135 public File getSharedPrefsFile(String name) { 136 throw new UnsupportedOperationException(); 137 } 138 139 @Override 140 public String getPackageCodePath() { 141 throw new UnsupportedOperationException(); 142 } 143 144 @Override 145 public SharedPreferences getSharedPreferences(String name, int mode) { 146 throw new UnsupportedOperationException(); 147 } 148 149 @Override 150 public FileInputStream openFileInput(String name) throws FileNotFoundException { 151 throw new UnsupportedOperationException(); 152 } 153 154 @Override 155 public FileOutputStream openFileOutput(String name, int mode) throws FileNotFoundException { 156 throw new UnsupportedOperationException(); 157 } 158 159 @Override 160 public boolean deleteFile(String name) { 161 throw new UnsupportedOperationException(); 162 } 163 164 @Override 165 public File getFileStreamPath(String name) { 166 throw new UnsupportedOperationException(); 167 } 168 169 @Override 170 public String[] fileList() { 171 throw new UnsupportedOperationException(); 172 } 173 174 @Override 175 public File getFilesDir() { 176 throw new UnsupportedOperationException(); 177 } 178 179 @Override 180 public File getNoBackupFilesDir() { 181 throw new UnsupportedOperationException(); 182 } 183 184 @Override 185 public File getExternalFilesDir(String type) { 186 throw new UnsupportedOperationException(); 187 } 188 189 @Override 190 public File getObbDir() { 191 throw new UnsupportedOperationException(); 192 } 193 194 @Override 195 public File getCacheDir() { 196 throw new UnsupportedOperationException(); 197 } 198 199 @Override 200 public File getCodeCacheDir() { 201 throw new UnsupportedOperationException(); 202 } 203 204 @Override 205 public File getExternalCacheDir() { 206 throw new UnsupportedOperationException(); 207 } 208 209 @Override 210 public File getDir(String name, int mode) { 211 throw new UnsupportedOperationException(); 212 } 213 214 @Override 215 public SQLiteDatabase openOrCreateDatabase(String file, int mode, 216 SQLiteDatabase.CursorFactory factory) { 217 throw new UnsupportedOperationException(); 218 } 219 220 @Override 221 public SQLiteDatabase openOrCreateDatabase(String file, int mode, 222 SQLiteDatabase.CursorFactory factory, DatabaseErrorHandler errorHandler) { 223 throw new UnsupportedOperationException(); 224 } 225 226 @Override 227 public File getDatabasePath(String name) { 228 throw new UnsupportedOperationException(); 229 } 230 231 @Override 232 public String[] databaseList() { 233 throw new UnsupportedOperationException(); 234 } 235 236 @Override 237 public boolean deleteDatabase(String name) { 238 throw new UnsupportedOperationException(); 239 } 240 241 @Override 242 public Drawable getWallpaper() { 243 throw new UnsupportedOperationException(); 244 } 245 246 @Override 247 public Drawable peekWallpaper() { 248 throw new UnsupportedOperationException(); 249 } 250 251 @Override 252 public int getWallpaperDesiredMinimumWidth() { 253 throw new UnsupportedOperationException(); 254 } 255 256 @Override 257 public int getWallpaperDesiredMinimumHeight() { 258 throw new UnsupportedOperationException(); 259 } 260 261 @Override 262 public void setWallpaper(Bitmap bitmap) throws IOException { 263 throw new UnsupportedOperationException(); 264 } 265 266 @Override 267 public void setWallpaper(InputStream data) throws IOException { 268 throw new UnsupportedOperationException(); 269 } 270 271 @Override 272 public void clearWallpaper() { 273 throw new UnsupportedOperationException(); 274 } 275 276 @Override 277 public void startActivity(Intent intent) { 278 throw new UnsupportedOperationException(); 279 } 280 281 @Override 282 public void startActivity(Intent intent, Bundle options) { 283 startActivity(intent); 284 } 285 286 @Override 287 public void startActivities(Intent[] intents) { 288 throw new UnsupportedOperationException(); 289 } 290 291 @Override 292 public void startActivities(Intent[] intents, Bundle options) { 293 startActivities(intents); 294 } 295 296 @Override 297 public void startIntentSender(IntentSender intent, 298 Intent fillInIntent, int flagsMask, int flagsValues, int extraFlags) 299 throws IntentSender.SendIntentException { 300 throw new UnsupportedOperationException(); 301 } 302 303 @Override 304 public void startIntentSender(IntentSender intent, 305 Intent fillInIntent, int flagsMask, int flagsValues, int extraFlags, 306 Bundle options) throws IntentSender.SendIntentException { 307 startIntentSender(intent, fillInIntent, flagsMask, flagsValues, extraFlags); 308 } 309 310 @Override 311 public void sendBroadcast(Intent intent) { 312 throw new UnsupportedOperationException(); 313 } 314 315 @Override 316 public void sendBroadcast(Intent intent, String receiverPermission) { 317 throw new UnsupportedOperationException(); 318 } 319 320 /** @hide */ 321 @Override 322 public void sendBroadcastMultiplePermissions(Intent intent, String[] receiverPermissions) { 323 throw new UnsupportedOperationException(); 324 } 325 326 /** @hide */ 327 @SystemApi 328 @Override 329 public void sendBroadcast(Intent intent, String receiverPermission, Bundle options) { 330 throw new UnsupportedOperationException(); 331 } 332 333 /** @hide */ 334 @Override 335 public void sendBroadcast(Intent intent, String receiverPermission, int appOp) { 336 throw new UnsupportedOperationException(); 337 } 338 339 @Override 340 public void sendOrderedBroadcast(Intent intent, 341 String receiverPermission) { 342 throw new UnsupportedOperationException(); 343 } 344 345 @Override 346 public void sendOrderedBroadcast(Intent intent, String receiverPermission, 347 BroadcastReceiver resultReceiver, Handler scheduler, int initialCode, String initialData, 348 Bundle initialExtras) { 349 throw new UnsupportedOperationException(); 350 } 351 352 /** @hide */ 353 @SystemApi 354 @Override 355 public void sendOrderedBroadcast(Intent intent, String receiverPermission, 356 Bundle options, BroadcastReceiver resultReceiver, Handler scheduler, int initialCode, String initialData, 357 Bundle initialExtras) { 358 throw new UnsupportedOperationException(); 359 } 360 361 /** @hide */ 362 @Override 363 public void sendOrderedBroadcast(Intent intent, String receiverPermission, int appOp, 364 BroadcastReceiver resultReceiver, Handler scheduler, int initialCode, String initialData, 365 Bundle initialExtras) { 366 throw new UnsupportedOperationException(); 367 } 368 369 @Override 370 public void sendBroadcastAsUser(Intent intent, UserHandle user) { 371 throw new UnsupportedOperationException(); 372 } 373 374 @Override 375 public void sendBroadcastAsUser(Intent intent, UserHandle user, 376 String receiverPermission) { 377 throw new UnsupportedOperationException(); 378 } 379 380 /** @hide */ 381 @Override 382 public void sendBroadcastAsUser(Intent intent, UserHandle user, 383 String receiverPermission, int appOp) { 384 throw new UnsupportedOperationException(); 385 } 386 387 @Override 388 public void sendOrderedBroadcastAsUser(Intent intent, UserHandle user, 389 String receiverPermission, BroadcastReceiver resultReceiver, Handler scheduler, 390 int initialCode, String initialData, Bundle initialExtras) { 391 throw new UnsupportedOperationException(); 392 } 393 394 /** @hide */ 395 @Override 396 public void sendOrderedBroadcastAsUser(Intent intent, UserHandle user, 397 String receiverPermission, int appOp, BroadcastReceiver resultReceiver, 398 Handler scheduler, int initialCode, String initialData, Bundle initialExtras) { 399 throw new UnsupportedOperationException(); 400 } 401 402 /** @hide */ 403 @Override 404 public void sendOrderedBroadcastAsUser(Intent intent, UserHandle user, 405 String receiverPermission, int appOp, Bundle options, BroadcastReceiver resultReceiver, 406 Handler scheduler, int initialCode, String initialData, Bundle initialExtras) { 407 throw new UnsupportedOperationException(); 408 } 409 410 @Override 411 public void sendStickyBroadcast(Intent intent) { 412 throw new UnsupportedOperationException(); 413 } 414 415 @Override 416 public void sendStickyOrderedBroadcast(Intent intent, 417 BroadcastReceiver resultReceiver, Handler scheduler, int initialCode, String initialData, 418 Bundle initialExtras) { 419 throw new UnsupportedOperationException(); 420 } 421 422 @Override 423 public void removeStickyBroadcast(Intent intent) { 424 throw new UnsupportedOperationException(); 425 } 426 427 @Override 428 public void sendStickyBroadcastAsUser(Intent intent, UserHandle user) { 429 throw new UnsupportedOperationException(); 430 } 431 432 @Override 433 public void sendStickyOrderedBroadcastAsUser(Intent intent, 434 UserHandle user, BroadcastReceiver resultReceiver, 435 Handler scheduler, int initialCode, String initialData, 436 Bundle initialExtras) { 437 throw new UnsupportedOperationException(); 438 } 439 440 @Override 441 public void removeStickyBroadcastAsUser(Intent intent, UserHandle user) { 442 throw new UnsupportedOperationException(); 443 } 444 445 @Override 446 public Intent registerReceiver(BroadcastReceiver receiver, IntentFilter filter) { 447 throw new UnsupportedOperationException(); 448 } 449 450 @Override 451 public Intent registerReceiver(BroadcastReceiver receiver, IntentFilter filter, 452 String broadcastPermission, Handler scheduler) { 453 throw new UnsupportedOperationException(); 454 } 455 456 /** @hide */ 457 @Override 458 public Intent registerReceiverAsUser(BroadcastReceiver receiver, UserHandle user, 459 IntentFilter filter, String broadcastPermission, Handler scheduler) { 460 throw new UnsupportedOperationException(); 461 } 462 463 @Override 464 public void unregisterReceiver(BroadcastReceiver receiver) { 465 throw new UnsupportedOperationException(); 466 } 467 468 @Override 469 public ComponentName startService(Intent service) { 470 throw new UnsupportedOperationException(); 471 } 472 473 @Override 474 public boolean stopService(Intent service) { 475 throw new UnsupportedOperationException(); 476 } 477 478 /** @hide */ 479 @Override 480 public ComponentName startServiceAsUser(Intent service, UserHandle user) { 481 throw new UnsupportedOperationException(); 482 } 483 484 /** @hide */ 485 @Override 486 public boolean stopServiceAsUser(Intent service, UserHandle user) { 487 throw new UnsupportedOperationException(); 488 } 489 490 @Override 491 public boolean bindService(Intent service, ServiceConnection conn, int flags) { 492 throw new UnsupportedOperationException(); 493 } 494 495 /** @hide */ 496 @Override 497 public boolean bindServiceAsUser(Intent service, ServiceConnection conn, int flags, 498 UserHandle user) { 499 throw new UnsupportedOperationException(); 500 } 501 502 @Override 503 public void unbindService(ServiceConnection conn) { 504 throw new UnsupportedOperationException(); 505 } 506 507 @Override 508 public boolean startInstrumentation(ComponentName className, 509 String profileFile, Bundle arguments) { 510 throw new UnsupportedOperationException(); 511 } 512 513 @Override 514 public Object getSystemService(String name) { 515 throw new UnsupportedOperationException(); 516 } 517 518 @Override 519 public String getSystemServiceName(Class<?> serviceClass) { 520 throw new UnsupportedOperationException(); 521 } 522 523 @Override 524 public int checkPermission(String permission, int pid, int uid) { 525 throw new UnsupportedOperationException(); 526 } 527 528 /** @hide */ 529 @Override 530 public int checkPermission(String permission, int pid, int uid, IBinder callerToken) { 531 return checkPermission(permission, pid, uid); 532 } 533 534 @Override 535 public int checkCallingPermission(String permission) { 536 throw new UnsupportedOperationException(); 537 } 538 539 @Override 540 public int checkCallingOrSelfPermission(String permission) { 541 throw new UnsupportedOperationException(); 542 } 543 544 @Override 545 public int checkSelfPermission(String permission) { 546 throw new UnsupportedOperationException(); 547 } 548 549 @Override 550 public void enforcePermission( 551 String permission, int pid, int uid, String message) { 552 throw new UnsupportedOperationException(); 553 } 554 555 @Override 556 public void enforceCallingPermission(String permission, String message) { 557 throw new UnsupportedOperationException(); 558 } 559 560 @Override 561 public void enforceCallingOrSelfPermission(String permission, String message) { 562 throw new UnsupportedOperationException(); 563 } 564 565 @Override 566 public void grantUriPermission(String toPackage, Uri uri, int modeFlags) { 567 throw new UnsupportedOperationException(); 568 } 569 570 @Override 571 public void revokeUriPermission(Uri uri, int modeFlags) { 572 throw new UnsupportedOperationException(); 573 } 574 575 @Override 576 public int checkUriPermission(Uri uri, int pid, int uid, int modeFlags) { 577 throw new UnsupportedOperationException(); 578 } 579 580 /** @hide */ 581 @Override 582 public int checkUriPermission(Uri uri, int pid, int uid, int modeFlags, IBinder callerToken) { 583 return checkUriPermission(uri, pid, uid, modeFlags); 584 } 585 586 @Override 587 public int checkCallingUriPermission(Uri uri, int modeFlags) { 588 throw new UnsupportedOperationException(); 589 } 590 591 @Override 592 public int checkCallingOrSelfUriPermission(Uri uri, int modeFlags) { 593 throw new UnsupportedOperationException(); 594 } 595 596 @Override 597 public int checkUriPermission(Uri uri, String readPermission, 598 String writePermission, int pid, int uid, int modeFlags) { 599 throw new UnsupportedOperationException(); 600 } 601 602 @Override 603 public void enforceUriPermission( 604 Uri uri, int pid, int uid, int modeFlags, String message) { 605 throw new UnsupportedOperationException(); 606 } 607 608 @Override 609 public void enforceCallingUriPermission( 610 Uri uri, int modeFlags, String message) { 611 throw new UnsupportedOperationException(); 612 } 613 614 @Override 615 public void enforceCallingOrSelfUriPermission( 616 Uri uri, int modeFlags, String message) { 617 throw new UnsupportedOperationException(); 618 } 619 620 public void enforceUriPermission( 621 Uri uri, String readPermission, String writePermission, 622 int pid, int uid, int modeFlags, String message) { 623 throw new UnsupportedOperationException(); 624 } 625 626 @Override 627 public Context createPackageContext(String packageName, int flags) 628 throws PackageManager.NameNotFoundException { 629 throw new UnsupportedOperationException(); 630 } 631 632 /** {@hide} */ 633 @Override 634 public Context createApplicationContext(ApplicationInfo application, int flags) 635 throws PackageManager.NameNotFoundException { 636 return null; 637 } 638 639 /** {@hide} */ 640 @Override 641 public Context createPackageContextAsUser(String packageName, int flags, UserHandle user) 642 throws PackageManager.NameNotFoundException { 643 throw new UnsupportedOperationException(); 644 } 645 646 /** {@hide} */ 647 @Override 648 public int getUserId() { 649 throw new UnsupportedOperationException(); 650 } 651 652 @Override 653 public Context createConfigurationContext(Configuration overrideConfiguration) { 654 throw new UnsupportedOperationException(); 655 } 656 657 @Override 658 public Context createDisplayContext(Display display) { 659 throw new UnsupportedOperationException(); 660 } 661 662 @Override 663 public boolean isRestricted() { 664 throw new UnsupportedOperationException(); 665 } 666 667 /** @hide */ 668 @Override 669 public DisplayAdjustments getDisplayAdjustments(int displayId) { 670 throw new UnsupportedOperationException(); 671 } 672 673 @Override 674 public File[] getExternalFilesDirs(String type) { 675 throw new UnsupportedOperationException(); 676 } 677 678 @Override 679 public File[] getObbDirs() { 680 throw new UnsupportedOperationException(); 681 } 682 683 @Override 684 public File[] getExternalCacheDirs() { 685 throw new UnsupportedOperationException(); 686 } 687 688 @Override 689 public File[] getExternalMediaDirs() { 690 throw new UnsupportedOperationException(); 691 } 692} 693