# IdlingRegistry

Summary:[Methods](https://developer.android.com/reference/android/support/test/espresso/IdlingRegistry#pubmethods)\|[Inherited Methods](https://developer.android.com/reference/android/support/test/espresso/IdlingRegistry#inhmethods)\|[\[Expand All\]](https://developer.android.com/reference/android/support/test/espresso/IdlingRegistry#)  

# IdlingRegistry

| This package is part of the Android[support library](https://developer.android.com/topic/libraries/support-library)which is no longer maintained. The support library has been superseded by[AndroidX](https://developer.android.com/jetpack/androidx)which is part of[Jetpack](https://developer.android.com/jetpack). We recommend using the AndroidX libraries in all new projects. You should also consider[migrating](https://developer.android.com/jetpack/androidx/migrate)existing projects to AndroidX. To find the AndroidX class that maps to this deprecated class, see the AndroidX support library[class mappings](https://developer.android.com/jetpack/androidx/migrate/class-mappings).

`
public

final

class
IdlingRegistry
`  
`

extends `[Object](https://developer.android.com/reference/java/lang/Object.html)`


``


`

|---|----------------------------------------------|
| [java.lang.Object](https://developer.android.com/reference/java/lang/Object.html) ||
| ↳ | android.support.test.espresso.IdlingRegistry |

<br />

*** ** * ** ***

Handles registering and unregistering of[IdlingResource](https://developer.android.com/reference/android/support/test/espresso/IdlingResource)s with Espresso from within your application code.

These resources are required by Espresso to provide synchronisation against your application code. All registered resources with this registry will be automatically synchronized against for each Espresso interaction.

This registry along with[IdlingResource](https://developer.android.com/reference/android/support/test/espresso/IdlingResource)interface are bundled together in a small light weight module so that it can be pulled in as a dependency of the App under test with close to no overhead.

## Summary

|                                                                                                                                                                                                                                                                                                            ### Public methods                                                                                                                                                                                                                                                                                                             ||
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| ` static `[IdlingRegistry](https://developer.android.com/reference/android/support/test/espresso/IdlingRegistry)                                                                               | ` `[getInstance](https://developer.android.com/reference/android/support/test/espresso/IdlingRegistry#getInstance())`() ` Returns a singleton instance of this[IdlingRegistry](https://developer.android.com/reference/android/support/test/espresso/IdlingRegistry)that should be globally used for registering and unregistering[IdlingResource](https://developer.android.com/reference/android/support/test/espresso/IdlingResource)s |
| ` `[Collection](https://developer.android.com/reference/java/util/Collection.html)`<`[Looper](https://developer.android.com/reference/android/os/Looper.html)`>`                               | ` `[getLoopers](https://developer.android.com/reference/android/support/test/espresso/IdlingRegistry#getLoopers())`() `                                                                                                                                                                                                                                                                                                                   |
| ` `[Collection](https://developer.android.com/reference/java/util/Collection.html)`<`[IdlingResource](https://developer.android.com/reference/android/support/test/espresso/IdlingResource)`>` | ` `[getResources](https://developer.android.com/reference/android/support/test/espresso/IdlingRegistry#getResources())`() ` Returns a set of all currently registered[IdlingResource](https://developer.android.com/reference/android/support/test/espresso/IdlingResource)s.                                                                                                                                                             |
| ` boolean`                                                                                                                                                                                     | ` `[register](https://developer.android.com/reference/android/support/test/espresso/IdlingRegistry#register(android.support.test.espresso.IdlingResource...))`(`[IdlingResource...](https://developer.android.com/reference/android/support/test/espresso/IdlingResource)` idlingResources) ` Registers one or more[IdlingResource](https://developer.android.com/reference/android/support/test/espresso/IdlingResource)s.               |
| ` void`                                                                                                                                                                                        | ` `[registerLooperAsIdlingResource](https://developer.android.com/reference/android/support/test/espresso/IdlingRegistry#registerLooperAsIdlingResource(android.os.Looper))`(`[Looper](https://developer.android.com/reference/android/os/Looper.html)` looper) ` Registers a[Looper](https://developer.android.com/reference/android/os/Looper.html)for idle checking with the framework.                                                |
| ` boolean`                                                                                                                                                                                     | ` `[unregister](https://developer.android.com/reference/android/support/test/espresso/IdlingRegistry#unregister(android.support.test.espresso.IdlingResource...))`(`[IdlingResource...](https://developer.android.com/reference/android/support/test/espresso/IdlingResource)` idlingResources) ` Unregisters one or more[IdlingResource](https://developer.android.com/reference/android/support/test/espresso/IdlingResource)s.         |

| ### Inherited methods |
|-----------------------|---|
| [![](https://developer.android.com/static/assets/images/styles/disclosure_down.png)](https://developer.android.com/reference/android/support/test/espresso/IdlingRegistry#)From class` `[java.lang.Object](https://developer.android.com/reference/java/lang/Object.html)` ` |-------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------| | ` `[Object](https://developer.android.com/reference/java/lang/Object.html)          | ` clone() `                                                                                | | ` boolean`                                                                          | ` equals(`[Object](https://developer.android.com/reference/java/lang/Object.html)` arg0) ` | | ` void`                                                                             | ` finalize() `                                                                             | | ` final `[Class](https://developer.android.com/reference/java/lang/Class.html)`<?>` | ` getClass() `                                                                             | | ` int`                                                                              | ` hashCode() `                                                                             | | ` final void`                                                                       | ` notify() `                                                                               | | ` final void`                                                                       | ` notifyAll() `                                                                            | | ` `[String](https://developer.android.com/reference/java/lang/String.html)          | ` toString() `                                                                             | | ` final void`                                                                       | ` wait(long arg0, int arg1) `                                                              | | ` final void`                                                                       | ` wait(long arg0) `                                                                        | | ` final void`                                                                       | ` wait() `                                                                                 | ||

## Public methods

### getInstance

```
IdlingRegistry getInstance ()
```

Returns a singleton instance of this[IdlingRegistry](https://developer.android.com/reference/android/support/test/espresso/IdlingRegistry)that should be globally used for registering and unregistering[IdlingResource](https://developer.android.com/reference/android/support/test/espresso/IdlingResource)s

<br />

|                                                    Returns                                                     ||
|--------------------------------------------------------------------------------------------------------|--------|
| [IdlingRegistry](https://developer.android.com/reference/android/support/test/espresso/IdlingRegistry) | <br /> |

### getLoopers

```
Collection<Looper> getLoopers ()
```

<br />

<br />

|                                                                                                                                      Returns                                                                                                                                      ||
|---------------------------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------|
| [Collection](https://developer.android.com/reference/java/util/Collection.html)`<`[Looper](https://developer.android.com/reference/android/os/Looper.html)`>` | a set of all currently registered[Looper](https://developer.android.com/reference/android/os/Looper.html)s. <br /> |

### getResources

```
Collection<IdlingResource> getResources ()
```

Returns a set of all currently registered[IdlingResource](https://developer.android.com/reference/android/support/test/espresso/IdlingResource)s.

<br />

|                                                                                               Returns                                                                                               ||
|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------|
| [Collection](https://developer.android.com/reference/java/util/Collection.html)`<`[IdlingResource](https://developer.android.com/reference/android/support/test/espresso/IdlingResource)`>` | <br /> |

### register

```
boolean register (IdlingResource... idlingResources)
```

Registers one or more[IdlingResource](https://developer.android.com/reference/android/support/test/espresso/IdlingResource)s. When registering more than one resource, ensure that each has a unique name returned from[getName()](https://developer.android.com/reference/android/support/test/espresso/IdlingResource#getName())

<br />

|                 Parameters                 ||
|-------------------|-------------------------|
| `idlingResources` | `IdlingResource` <br /> |

|                                         Returns                                         ||
|-----------|------------------------------------------------------------------------------|
| `boolean` | `true`if at least one resource was successfully added to the registry <br /> |

### registerLooperAsIdlingResource

```
void registerLooperAsIdlingResource (Looper looper)
```

Registers a[Looper](https://developer.android.com/reference/android/os/Looper.html)for idle checking with the framework. This is intended for use with non-UI thread[Looper](https://developer.android.com/reference/android/os/Looper.html)s only.

<br />

|        Parameters         ||
|----------|-----------------|
| `looper` | `Looper` <br /> |

|                                                                   Throws                                                                   ||
|-------------------------------------------------------------------------------------------------------------|-------------------------------|
| [IllegalArgumentException](https://developer.android.com/reference/java/lang/IllegalArgumentException.html) | if looper is the main looper. |
| [NullPointerException](https://developer.android.com/reference/java/lang/NullPointerException.html)         | if looper is null.            |

### unregister

```
boolean unregister (IdlingResource... idlingResources)
```

Unregisters one or more[IdlingResource](https://developer.android.com/reference/android/support/test/espresso/IdlingResource)s.

<br />

|                 Parameters                 ||
|-------------------|-------------------------|
| `idlingResources` | `IdlingResource` <br /> |

|                                           Returns                                           ||
|-----------|----------------------------------------------------------------------------------|
| `boolean` | `true`if at least one resource was successfully removed from the registry <br /> |

-

  ## Interfaces

  - [EspressoException](https://developer.android.com/reference/android/support/test/espresso/EspressoException)
  - [FailureHandler](https://developer.android.com/reference/android/support/test/espresso/FailureHandler)
  - [IdlingResource](https://developer.android.com/reference/android/support/test/espresso/IdlingResource)
  - [IdlingResource.ResourceCallback](https://developer.android.com/reference/android/support/test/espresso/IdlingResource.ResourceCallback)
  - [UiController](https://developer.android.com/reference/android/support/test/espresso/UiController)
  - [ViewAction](https://developer.android.com/reference/android/support/test/espresso/ViewAction)
  - [ViewAssertion](https://developer.android.com/reference/android/support/test/espresso/ViewAssertion)
  - [ViewFinder](https://developer.android.com/reference/android/support/test/espresso/ViewFinder)
  - [ViewInteractionComponent](https://developer.android.com/reference/android/support/test/espresso/ViewInteractionComponent)
-

  ## Classes

  - [AmbiguousViewMatcherException.Builder](https://developer.android.com/reference/android/support/test/espresso/AmbiguousViewMatcherException.Builder)
  - [DataInteraction](https://developer.android.com/reference/android/support/test/espresso/DataInteraction)
  - [DataInteraction.DisplayDataMatcher](https://developer.android.com/reference/android/support/test/espresso/DataInteraction.DisplayDataMatcher)
  - [Espresso](https://developer.android.com/reference/android/support/test/espresso/Espresso)
  - [IdlingPolicies](https://developer.android.com/reference/android/support/test/espresso/IdlingPolicies)
  - [IdlingPolicy](https://developer.android.com/reference/android/support/test/espresso/IdlingPolicy)
  - [IdlingRegistry](https://developer.android.com/reference/android/support/test/espresso/IdlingRegistry)
  - [NoMatchingViewException.Builder](https://developer.android.com/reference/android/support/test/espresso/NoMatchingViewException.Builder)
  - [PerformException.Builder](https://developer.android.com/reference/android/support/test/espresso/PerformException.Builder)
  - [Root](https://developer.android.com/reference/android/support/test/espresso/Root)
  - [Root.Builder](https://developer.android.com/reference/android/support/test/espresso/Root.Builder)
  - [ViewInteraction](https://developer.android.com/reference/android/support/test/espresso/ViewInteraction)
-

  ## Exceptions

  - [AmbiguousViewMatcherException](https://developer.android.com/reference/android/support/test/espresso/AmbiguousViewMatcherException)
  - [AppNotIdleException](https://developer.android.com/reference/android/support/test/espresso/AppNotIdleException)
  - [IdlingResourceTimeoutException](https://developer.android.com/reference/android/support/test/espresso/IdlingResourceTimeoutException)
  - [InjectEventSecurityException](https://developer.android.com/reference/android/support/test/espresso/InjectEventSecurityException)
  - [NoActivityResumedException](https://developer.android.com/reference/android/support/test/espresso/NoActivityResumedException)
  - [NoMatchingRootException](https://developer.android.com/reference/android/support/test/espresso/NoMatchingRootException)
  - [NoMatchingViewException](https://developer.android.com/reference/android/support/test/espresso/NoMatchingViewException)
  - [PerformException](https://developer.android.com/reference/android/support/test/espresso/PerformException)