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 @NonNull Bundle

Returns a copy of instrumentation arguments Bundle.

static @NonNull Instrumentation

Returns the instrumentation currently running.

static @NonNull void
registerInstance(
    @NonNull Instrumentation instrumentation,
    @NonNull Bundle arguments
)

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

Public methods

getArguments

@NonNull
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

@NonNull
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

@NonNull
public static void registerInstance(
    @NonNull Instrumentation instrumentation,
    @NonNull 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
@NonNull Instrumentation instrumentation

the instrumentation currently running.

@NonNull Bundle arguments

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