InstrumentationRegistry

public final class InstrumentationRegistry


An exposed registry instance that holds a reference to the instrumentation running in the process and its arguments.

Instrumentation and InstrumentationRegistry are low level APIs, typically used by higher level test frameworks. It is generally not recommended for direct use by most tests.

Summary

Public methods

static Bundle

Returns a copy of instrumentation arguments Bundle.

static Instrumentation

Returns the instrumentation currently running.

static void
registerInstance(Instrumentation instrumentation, Bundle arguments)

Records/exposes the instrumentation currently running and stores a copy of the instrumentation arguments Bundle in the registry.

Public methods

getArguments

public static Bundle getArguments()

Returns a copy of instrumentation arguments Bundle. Use this to get a Bundle containing the command line arguments passed to Instrumentation into your test.

This Bundle is not guaranteed to be present under all instrumentations.

Returns
Bundle

Bundle the arguments for this instrumentation.

Throws
java.lang.IllegalStateException

if no argument Bundle has been registered.

getInstrumentation

public static Instrumentation getInstrumentation()

Returns the instrumentation currently running. Use this to get an Instrumentation into your test.

Throws
java.lang.IllegalStateException

if instrumentation hasn't been registered

registerInstance

public static void registerInstance(Instrumentation instrumentation, Bundle arguments)

Records/exposes the instrumentation currently running and stores a copy of the instrumentation arguments Bundle in the registry.

This is a global registry - so be aware of the impact of calling this method!

Parameters
Instrumentation instrumentation

the instrumentation currently running.

Bundle arguments

the arguments for this application. Null deregisters any existing arguments.