{% setvar book_path %}/reference/kotlin/androidx/_book.yaml{% endsetvar %} {% include "_shared/_reference-head-tags.html" %}
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. |
Public constructors |
|
|---|---|
BoundedDiagnosingMatcher(expectedType: Class<S!>!) |
|
Public functions |
|
|---|---|
Unit |
describeMismatch(item: Any!, mismatchDescription: Description!)This method provides a default implementation for |
Unit |
describeTo(description: Description!) |
Boolean |
|
BoundedDiagnosingMatcher(
expectedType: Class<S!>!,
interfaceType1: Class<Any!>!,
otherInterfaces: Array<Class<Any!>!>!
)
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. |