ActivityUnitTestCase
  public
  
  
  abstract
  class
  ActivityUnitTestCase
  
  
  
  
  
  
  
    extends ActivityTestCase
  
  
  
  
  
  
| java.lang.Object | |||
| ↳ | android.test.InstrumentationTestCase | ||
| ↳ | android.test.ActivityTestCase | ||
| ↳ | android.test.ActivityUnitTestCase<T extends android.app.Activity> | ||
      This class was deprecated
      in API level 24.
    Write
 Local Unit Tests
 instead.
  
This class provides isolated testing of a single activity.  The activity under test will
 be created with minimal connection to the system infrastructure, and you can inject mocked or
 wrappered versions of many of Activity's dependencies.  Most of the work is handled
 automatically here by setUp() and tearDown().
 
If you prefer a functional test, see ActivityInstrumentationTestCase.
 
It must be noted that, as a true unit test, your Activity will not be running in the normal system and will not participate in the normal interactions with other Activities. The following methods should not be called in this configuration - most of them will throw exceptions:
- Activity.createPendingResult(int, Intent, int)
- Activity.startActivityIfNeeded(Intent, int)
- Activity.startActivityFromChild(Activity, Intent, int)
- Activity.startNextMatchingActivity(Intent)
- Activity.getCallingActivity()
- Activity.getCallingPackage()
- Activity.createPendingResult(int, Intent, int)
- Activity.getTaskId()
- Activity.isTaskRoot()
- Activity.moveTaskToBack(boolean)
The following methods may be called but will not do anything.  For test purposes, you can use
 the methods getStartedActivityIntent() and getStartedActivityRequest() to
 inspect the parameters that they were called with.
 
The following methods may be called but will not do anything.  For test purposes, you can use
 the methods isFinishCalled() and getFinishedActivityRequest() to inspect the
 parameters that they were called with.
 
Summary
| Public constructors | |
|---|---|
| 
      ActivityUnitTestCase(Class<T> activityClass)
       | |
| Public methods | |
|---|---|
| 
        
        
        
        
        
        T | 
      getActivity()
       | 
| 
        
        
        
        
        
        int | 
      getFinishedActivityRequest()
      This method will return the request code if the Activity under test called
  | 
| 
        
        
        
        
        
        int | 
      getRequestedOrientation()
      This method will return the value if your Activity under test calls
  | 
| 
        
        
        
        
        
        Intent | 
      getStartedActivityIntent()
      This method will return the launch intent if your Activity under test calls
  | 
| 
        
        
        
        
        
        int | 
      getStartedActivityRequest()
      This method will return the launch request code if your Activity under test calls
  | 
| 
        
        
        
        
        
        boolean | 
      isFinishCalled()
      This method will notify you if the Activity under test called
  | 
| 
        
        
        
        
        
        void | 
      setActivityContext(Context activityContext)
      If you wish to inject a Mock, Isolated, or otherwise altered context, you can do so here. | 
| 
        
        
        
        
        
        void | 
      setApplication(Application application)
      Set the application for use during the test. | 
| Protected methods | |
|---|---|
| 
        
        
        
        
        
        void | 
      setUp()
       | 
| 
        
        
        
        
        
        T | 
      startActivity(Intent intent, Bundle savedInstanceState, Object lastNonConfigurationInstance)
      Start the activity under test, in the same way as if it was started by
  | 
| 
        
        
        
        
        
        void | 
      tearDown()
      Make sure all resources are cleaned up and garbage collected before moving on to the next test. | 
| Inherited methods | |
|---|---|
Public constructors
ActivityUnitTestCase
public ActivityUnitTestCase (Class<T> activityClass)
| Parameters | |
|---|---|
| activityClass | Class | 
Public methods
getFinishedActivityRequest
public int getFinishedActivityRequest ()
This method will return the request code if the Activity under test called
 Activity.finishActivity(int).
| Returns | |
|---|---|
| int | The request code provided in the start call, or -1 if no finish call was made. | 
getRequestedOrientation
public int getRequestedOrientation ()
This method will return the value if your Activity under test calls
 Activity.setRequestedOrientation(int).
| Returns | |
|---|---|
| int | |
getStartedActivityIntent
public Intent getStartedActivityIntent ()
This method will return the launch intent if your Activity under test calls
 Activity.startActivity(Intent) or
 Activity.startActivityForResult(Intent, int).
| Returns | |
|---|---|
| Intent | The Intent provided in the start call, or null if no start call was made. | 
getStartedActivityRequest
public int getStartedActivityRequest ()
This method will return the launch request code if your Activity under test calls
 Activity.startActivityForResult(Intent, int).
| Returns | |
|---|---|
| int | The request code provided in the start call, or -1 if no start call was made. | 
isFinishCalled
public boolean isFinishCalled ()
This method will notify you if the Activity under test called
 Activity.finish(),
 Activity.finishFromChild(Activity), or
 Activity.finishActivity(int).
| Returns | |
|---|---|
| boolean | Returns true if one of the listed finish methods was called. | 
setActivityContext
public void setActivityContext (Context activityContext)
If you wish to inject a Mock, Isolated, or otherwise altered context, you can do so
 here.  You must call this function before calling startActivity(Intent, Bundle, Object).  If you wish to
 obtain a real Context, as a building block, use getInstrumentation().getTargetContext().
| Parameters | |
|---|---|
| activityContext | Context | 
setApplication
public void setApplication (Application application)
Set the application for use during the test.  You must call this function before calling
 startActivity(Intent, Bundle, Object).  If your test does not call this method,
| Parameters | |
|---|---|
| application | Application: The Application object that will be injected into the Activity under test. | 
Protected methods
startActivity
protected T startActivity (Intent intent, Bundle savedInstanceState, Object lastNonConfigurationInstance)
Start the activity under test, in the same way as if it was started by
 Context.startActivity(), providing the
 arguments it supplied.  When you use this method to start the activity, it will automatically
 be stopped by tearDown().
 
This method will call onCreate(), but if you wish to further exercise Activity life cycle methods, you must call them yourself from your test case.
Do not call from your setUp() method. You must call this method from each of your test methods.
| Parameters | |
|---|---|
| intent | Intent: The Intent as if supplied toContext.startActivity(Intent). | 
| savedInstanceState | Bundle: The instance state, if you are simulating this part of the life
 cycle.  Typically null. | 
| lastNonConfigurationInstance | Object: This Object will be available to the
 Activity if it callsActivity.getLastNonConfigurationInstance().
 Typically null. | 
| Returns | |
|---|---|
| T | Returns the Activity that was created | 
tearDown
protected void tearDown ()
Make sure all resources are cleaned up and garbage collected before moving on to the next test. Subclasses that override this method should make sure they call super.tearDown() at the end of the overriding method.
| Throws | |
|---|---|
| Exception | |
