blob: f482cbfa385a62d6df4f66cf816ed4294ab82813 [file] [log] [blame]
package org.hamcrest.core;
import org.hamcrest.AbstractMatcherTest;
import org.hamcrest.Matcher;
import static org.hamcrest.core.StringEndsWith.endsWith;
import static org.hamcrest.core.StringEndsWith.endsWithIgnoringCase;
public class StringEndsWithTest extends AbstractMatcherTest {
static final String EXCERPT = "EXCERPT";
final Matcher<String> stringEndsWith = endsWith(EXCERPT);
@Override
protected Matcher<?> createMatcher() {
return stringEndsWith;
}
public void testMatchesSubstringAtEnd() {
assertDoesNotMatch(stringEndsWith, EXCERPT + "END");
assertMatches(stringEndsWith, "START" + EXCERPT);
assertMatches(stringEndsWith, EXCERPT);
assertDoesNotMatch(stringEndsWith, EXCERPT.toLowerCase());
assertDoesNotMatch(stringEndsWith, "START" + EXCERPT + "END");
assertMatches(stringEndsWith, EXCERPT + EXCERPT);
assertDoesNotMatch(stringEndsWith, "EXCER");
assertMismatchDescription("was \"Something else\"", stringEndsWith, "Something else");
assertDescription("a string ending with \"EXCERPT\"", stringEndsWith);
}
public void testMatchesSubstringAtEndIngoringCase() {
final Matcher<String> ignoringCase = endsWithIgnoringCase("EXCERpt");
assertDoesNotMatch(ignoringCase, "eXCErpt" + "END");
assertMatches(ignoringCase, "START" + "EXceRpt");
assertMatches(ignoringCase, "EXcerPT");
assertDoesNotMatch(ignoringCase, "START" + "ExcERpt" + "END");
assertMatches(ignoringCase, "exCERpt" + "EXCerPt");
assertDoesNotMatch(ignoringCase, "ExcER");
assertMismatchDescription("was \"Something else\"", ignoringCase, "Something else");
assertDescription("a string ending with \"EXCERpt\" ignoring case", ignoringCase);
}
}