Package org.hamcrest
Class FeatureMatcher<T,U>
java.lang.Object
org.hamcrest.BaseMatcher<T>
org.hamcrest.TypeSafeDiagnosingMatcher<T>
org.hamcrest.FeatureMatcher<T,U>
- Type Parameters:
T
- The type of the object to be matchedU
- The type of the feature to be matched
- All Implemented Interfaces:
Matcher<T>
,SelfDescribing
- Direct Known Subclasses:
CharSequenceLength
,HasToString
,IsArrayWithSize
,IsCollectionWithSize
,IsIterableWithSize
,IsMapWithSize
Supporting class for matching a feature of an object. Implement
featureValueOf()
in a subclass to pull out the feature to be matched against.-
Constructor Summary
ConstructorDescriptionFeatureMatcher
(Matcher<? super U> subMatcher, String featureDescription, String featureName) Constructor -
Method Summary
Modifier and TypeMethodDescriptionfinal void
describeTo
(Description description) Generates a description of the object.protected abstract U
featureValueOf
(T actual) Implement this to extract the interesting feature.protected boolean
matchesSafely
(T actual, Description mismatch) Subclasses should implement this.Methods inherited from class org.hamcrest.TypeSafeDiagnosingMatcher
describeMismatch, matches
Methods inherited from class org.hamcrest.BaseMatcher
_dont_implement_Matcher___instead_extend_BaseMatcher_, isNotNull, toString
-
Constructor Details
-
FeatureMatcher
Constructor- Parameters:
subMatcher
- The matcher to apply to the featurefeatureDescription
- Descriptive text to use in describeTofeatureName
- Identifying text for mismatch message
-
-
Method Details
-
featureValueOf
Implement this to extract the interesting feature.- Parameters:
actual
- the target object- Returns:
- the feature to be matched
-
matchesSafely
Description copied from class:TypeSafeDiagnosingMatcher
Subclasses should implement this. The item will already have been checked for the specific type and will never be null.- Specified by:
matchesSafely
in classTypeSafeDiagnosingMatcher<T>
- Parameters:
actual
- the item.mismatch
- the mismatch description.- Returns:
- boolean true/false depending if item matches matcher.
-
describeTo
Description copied from interface:SelfDescribing
Generates a description of the object. The description may be part of a description of a larger object of which this is just a component, so it should be worded appropriately.- Parameters:
description
- The description to be built or appended to.
-