IdlingResource
  public
  
  
  
  interface
  IdlingResource
  
  
  
| android.support.test.espresso.IdlingResource | 
|  | 
Represents a resource of an application under test which can cause asynchronous background work
 to happen during test execution (e.g. an intent service that processes a button click). By
 default, Espresso synchronizes all view operations with the UI thread as well as
 AsyncTasks; however, it has no way of doing so with "hand-made" resources. In such cases, test
 authors can register the custom resource via IdlingRegistry
 and Espresso will wait for the resource to become idle prior to executing a view
 operation.
 
Important Note: it is assumed that the resource stays idle most of the time.
Note: before writing your implementation consider using CountingIdlingResource instead.
Summary
| Nested classes | |
|---|---|
| 
        
        
        
        
        interface | IdlingResource.ResourceCallbackRegistered by an  | 
| Public methods | |
|---|---|
| 
        abstract
        
        
        
        
        String | 
      getName()
      Returns the name of the resources (used for logging and idempotency of registration). | 
| 
        abstract
        
        
        
        
        boolean | 
      isIdleNow()
      Returns  | 
| 
        abstract
        
        
        
        
        void | 
      registerIdleTransitionCallback(IdlingResource.ResourceCallback callback)
      Registers the given  | 
Public methods
getName
String getName ()
Returns the name of the resources (used for logging and idempotency of registration).
| Returns | |
|---|---|
| String | |
isIdleNow
boolean isIdleNow ()
Returns true if resource is currently idle. Espresso will always call this
 method from the main thread, therefore it should be non-blocking and return immediately.
| Returns | |
|---|---|
| boolean | |
registerIdleTransitionCallback
void registerIdleTransitionCallback (IdlingResource.ResourceCallback callback)
Registers the given IdlingResource.ResourceCallback with the resource. Espresso will call this method:
 
- with its implementation of IdlingResource.ResourceCallbackso it can be notified asynchronously that your resource is idle
- from the main thread, but you are free to execute the callback's onTransitionToIdle from any thread
- once (when it is initially given a reference to your IdlingResource)
You only need to call this upon transition from busy to idle - if the resource is already idle when the method is called invoking the call back is optional and has no significant impact.
| Parameters | |
|---|---|
| callback | IdlingResource.ResourceCallback | 
- Interfaces
- Classes
- Exceptions
Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
Last updated 2025-02-10 UTC.
