Skip to content

Most visited

Recently visited

navigation

IntentMatchers

public final class IntentMatchers
extends Object

java.lang.Object
   ↳ android.support.test.espresso.intent.matcher.IntentMatchers


A collection of hamcrest matchers for matching Intent objects.

Summary

Public methods

static Matcher<Intent> anyIntent()
static Matcher<Intent> hasAction(String action)
static Matcher<Intent> hasAction(Matcher<String> actionMatcher)
static Matcher<Intent> hasCategories(Set<String> categories)
static Matcher<Intent> hasCategories(Matcher<? extends Iterable<? super String>> categoriesMatcher)
static Matcher<Intent> hasComponent(String className)

Returns a matcher that will only match intents targeted to a single class by using hasClassName(String).

static Matcher<Intent> hasComponent(Matcher<ComponentName> componentMatcher)

Can match an intent by class name, package name or short class name.

static Matcher<Intent> hasComponent(ComponentName componentName)

Returns a matcher that will only match intents targeted to the componentName's class, .

static Matcher<Intent> hasData(Matcher<Uri> uriMatcher)
static Matcher<Intent> hasData(String uri)
static Matcher<Intent> hasData(Uri uri)
static Matcher<Intent> hasExtra(Matcher<String> keyMatcher, Matcher<?> valueMatcher)
static <T> Matcher<Intent> hasExtra(String key, T value)
static Matcher<Intent> hasExtraWithKey(Matcher<String> keyMatcher)
static Matcher<Intent> hasExtraWithKey(String key)
static Matcher<Intent> hasExtras(Matcher<Bundle> bundleMatcher)
static Matcher<Intent> hasFlag(int flag)
static Matcher<Intent> hasFlags(int flags)
static Matcher<Intent> hasFlags(int... flags)
static Matcher<Intent> hasPackage(Matcher<String> packageMatcher)
static Matcher<Intent> hasPackage(String packageName)
static Matcher<Intent> hasType(Matcher<String> typeMatcher)
static Matcher<Intent> hasType(String type)
static Matcher<Intent> isInternal()

Matches an intent if its package is the same as the target package for the instrumentation test.

static Matcher<Intent> toPackage(String packageName)

Matches an intent based on the package of activity which can handle the intent.

Inherited methods

From class java.lang.Object

Public methods

anyIntent

Matcher<Intent> anyIntent ()

Returns
Matcher<Intent>

hasAction

Matcher<Intent> hasAction (String action)

Parameters
action String

Returns
Matcher<Intent>

hasAction

Matcher<Intent> hasAction (Matcher<String> actionMatcher)

Parameters
actionMatcher Matcher

Returns
Matcher<Intent>

hasCategories

Matcher<Intent> hasCategories (Set<String> categories)

Parameters
categories Set

Returns
Matcher<Intent>

hasCategories

Matcher<Intent> hasCategories (Matcher<? extends Iterable<? super String>> categoriesMatcher)

Parameters
categoriesMatcher Matcher

Returns
Matcher<Intent>

hasComponent

Matcher<Intent> hasComponent (String className)

Returns a matcher that will only match intents targeted to a single class by using hasClassName(String). The input string must contain the package name + short class name. For example hasComponent("com.google.provider.NotePad").

Parameters
className String: complete class path

Returns
Matcher<Intent>

hasComponent

Matcher<Intent> hasComponent (Matcher<ComponentName> componentMatcher)

Can match an intent by class name, package name or short class name.

Parameters
componentMatcher Matcher: can be the value of hasClassName(String), hasPackageName(String) or hasShortClassName(String)

Returns
Matcher<Intent>

hasComponent

Matcher<Intent> hasComponent (ComponentName componentName)

Returns a matcher that will only match intents targeted to the componentName's class, . For example: Intent intent = new Intent() .setComponentName(new ComponentName("com.google.provider", "com.google.provider.Notepad")); will match all intents targeted to Notepad.java.

Parameters
componentName ComponentName: a componentName that has the target class specified

Returns
Matcher<Intent>

See also:

hasData

Matcher<Intent> hasData (Matcher<Uri> uriMatcher)

Parameters
uriMatcher Matcher

Returns
Matcher<Intent>

hasData

Matcher<Intent> hasData (String uri)

Parameters
uri String

Returns
Matcher<Intent>

hasData

Matcher<Intent> hasData (Uri uri)

Parameters
uri Uri

Returns
Matcher<Intent>

hasExtra

Matcher<Intent> hasExtra (Matcher<String> keyMatcher, 
                Matcher<?> valueMatcher)

Parameters
keyMatcher Matcher

valueMatcher Matcher

Returns
Matcher<Intent>

hasExtra

Matcher<Intent> hasExtra (String key, 
                T value)

Parameters
key String

value T

Returns
Matcher<Intent>

hasExtraWithKey

Matcher<Intent> hasExtraWithKey (Matcher<String> keyMatcher)

Parameters
keyMatcher Matcher

Returns
Matcher<Intent>

hasExtraWithKey

Matcher<Intent> hasExtraWithKey (String key)

Parameters
key String

Returns
Matcher<Intent>

hasExtras

Matcher<Intent> hasExtras (Matcher<Bundle> bundleMatcher)

Parameters
bundleMatcher Matcher

Returns
Matcher<Intent>

hasFlag

Matcher<Intent> hasFlag (int flag)

Parameters
flag int

Returns
Matcher<Intent>

hasFlags

Matcher<Intent> hasFlags (int flags)

Parameters
flags int

Returns
Matcher<Intent>

hasFlags

Matcher<Intent> hasFlags (int... flags)

Parameters
flags int

Returns
Matcher<Intent>

hasPackage

Matcher<Intent> hasPackage (Matcher<String> packageMatcher)

Parameters
packageMatcher Matcher

Returns
Matcher<Intent>

hasPackage

Matcher<Intent> hasPackage (String packageName)

Parameters
packageName String

Returns
Matcher<Intent>

hasType

Matcher<Intent> hasType (Matcher<String> typeMatcher)

Parameters
typeMatcher Matcher

Returns
Matcher<Intent>

hasType

Matcher<Intent> hasType (String type)

Parameters
type String

Returns
Matcher<Intent>

isInternal

Matcher<Intent> isInternal ()

Matches an intent if its package is the same as the target package for the instrumentation test.

Returns
Matcher<Intent>

toPackage

Matcher<Intent> toPackage (String packageName)

Matches an intent based on the package of activity which can handle the intent.

Parameters
packageName String: packages of activity that can handle the intent

Returns
Matcher<Intent>

This site uses cookies to store your preferences for site-specific language and display options.

Get the latest Android developer news and tips that will help you find success on Google Play.

* Required Fields

Hooray!

Follow Google Developers on WeChat

Browse this site in ?

You requested a page in , but your language preference for this site is .

Would you like to change your language preference and browse this site in ? If you want to change your language preference later, use the language menu at the bottom of each page.

This class requires API level or higher

This doc is hidden because your selected API level for the documentation is . You can change the documentation API level with the selector above the left navigation.

For more information about specifying the API level your app requires, read Supporting Different Platform Versions.

Take a short survey?
Help us improve the Android developer experience.
(Sep 2017 survey)