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

BoundedDiagnosingMatcher

abstract class BoundedDiagnosingMatcher<S, T : S?>


A matcher that allows for a quick creation of a matcher that applies to a given type but only processes items of a specific subtype of that matcher. Additional interfaces can be applied. This class is syntactic sugar for Matchers#instanceOf(Class) where the first argument is the base class and the remaining optional arguments are interfaces.

Parameters
<S>

The desired type of the Matcher (T or a subclass of T).

<T : S?>

The actual type that the matcher applies safely to.

Summary

Public constructors

BoundedDiagnosingMatcher(expectedType: Class<S!>!)
BoundedDiagnosingMatcher(
    expectedType: Class<S!>!,
    interfaceType1: Class<Any!>!,
    otherInterfaces: Array<Class<Any!>!>!
)

Public functions

Unit
describeMismatch(item: Any!, mismatchDescription: Description!)

This method provides a default implementation for null check as well as a super type and interface checks provided by the constructor.

Unit
describeTo(description: Description!)
Boolean
matches(item: Any!)

Public constructors

BoundedDiagnosingMatcher

BoundedDiagnosingMatcher(expectedType: Class<S!>!)

BoundedDiagnosingMatcher

BoundedDiagnosingMatcher(
    expectedType: Class<S!>!,
    interfaceType1: Class<Any!>!,
    otherInterfaces: Array<Class<Any!>!>!
)

Public functions

describeMismatch

fun describeMismatch(item: Any!, mismatchDescription: Description!): Unit

This method provides a default implementation for null check as well as a super type and interface checks provided by the constructor. Failing either check provides a default mismatch description. Passing both will call into matchesSafely which will allow the sub-class to check for a mismatch and describe what went wrong (if anything at all).

Parameters
item: Any!

The item which is assumed to have mismatched and should be described.

mismatchDescription: Description!

The description builder for the mismatch.

See also
TypeSafeDiagnosingMatcher

for similar implementation pattern.

describeTo

fun describeTo(description: Description!): Unit

matches

fun matches(item: Any!): Boolean