{% setvar book_path %}/reference/kotlin/androidx/_book.yaml{% endsetvar %} {% include "_shared/_reference-head-tags.html" %}

IdlingRegistry

class IdlingRegistry


Handles registering and unregistering of IdlingResources 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 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 constructors

Public functions

java-static IdlingRegistry!

Returns a singleton instance of this IdlingRegistry that should be globally used for registering and unregistering IdlingResources

(Mutable)Collection<Looper!>!

Returns a set of all currently registered Loopers.

(Mutable)Collection<IdlingResource!>!

Returns a set of all currently registered IdlingResources.

Boolean
register(idlingResources: Array<IdlingResource!>!)

Registers one or more IdlingResources.

Unit

Registers a Looper for idle checking with the framework.

Boolean
unregister(idlingResources: Array<IdlingResource!>!)

Unregisters one or more IdlingResources.

Boolean

Unregisters a Looper.

Public constructors

IdlingRegistry

IdlingRegistry()

Public functions

getInstance

java-static fun getInstance(): IdlingRegistry!

Returns a singleton instance of this IdlingRegistry that should be globally used for registering and unregistering IdlingResources

getLoopers

fun getLoopers(): (Mutable)Collection<Looper!>!

Returns a set of all currently registered Loopers.

getResources

fun getResources(): (Mutable)Collection<IdlingResource!>!

Returns a set of all currently registered IdlingResources.

register

fun register(idlingResources: Array<IdlingResource!>!): Boolean

Registers one or more IdlingResources. When registering more than one resource, ensure that each has a unique name returned from IdlingResource#getName()

Returns
Boolean

true if at least one resource was successfully added to the registry

registerLooperAsIdlingResource

fun registerLooperAsIdlingResource(looper: Looper!): Unit

Registers a Looper for idle checking with the framework. This is intended for use with non-UI thread Loopers only.

Throws
java.lang.IllegalArgumentException: java.lang.IllegalArgumentException

if looper is the main looper.

java.lang.NullPointerException: java.lang.NullPointerException

if looper is null.

unregister

fun unregister(idlingResources: Array<IdlingResource!>!): Boolean

Unregisters one or more IdlingResources.

Returns
Boolean

true if at least one resource was successfully removed from the registry

unregisterLooperAsIdlingResource

fun unregisterLooperAsIdlingResource(looper: Looper!): Boolean

Unregisters a Looper.

Attempting to unregister a looper that is not registered is a no-op.

Returns
Boolean

true if the looper was successfully removed from the registry