| package org.hamcrest.core; |
| |
| import org.hamcrest.AbstractMatcherTest; |
| import org.hamcrest.Matcher; |
| |
| import static org.hamcrest.core.StringContains.containsString; |
| import static org.hamcrest.core.StringContains.containsStringIgnoringCase; |
| |
| |
| public class StringContainsTest extends AbstractMatcherTest { |
| static final String EXCERPT = "EXCERPT"; |
| final Matcher<String> stringContains = containsString(EXCERPT); |
| |
| @Override |
| protected Matcher<?> createMatcher() { |
| return stringContains; |
| } |
| |
| public void testMatchesSubstrings() { |
| assertMatches(stringContains, EXCERPT + "END"); |
| assertMatches(stringContains, "START" + EXCERPT); |
| assertMatches(stringContains, "START" + EXCERPT + "END"); |
| assertMatches(stringContains, EXCERPT); |
| assertDoesNotMatch(stringContains, EXCERPT.toLowerCase()); |
| assertMatches(stringContains, EXCERPT + EXCERPT); |
| assertDoesNotMatch(stringContains, "XC"); |
| |
| assertMismatchDescription("was \"Something else\"", stringContains, "Something else"); |
| assertDescription("a string containing \"EXCERPT\"", stringContains); |
| } |
| |
| public void testMatchesSubstringsIgnoringCase() { |
| final Matcher<String> ignoringCase = containsStringIgnoringCase("ExCert"); |
| assertMatches(ignoringCase, "eXcERT" + "END"); |
| assertMatches(ignoringCase, "START" + "EXCert"); |
| assertMatches(ignoringCase, "START" + "excERT" + "END"); |
| assertMatches(ignoringCase, "eXCert" + "excErt"); |
| assertDoesNotMatch(ignoringCase, "xc"); |
| |
| assertMismatchDescription("was \"Something else\"", ignoringCase, "Something else"); |
| assertDescription("a string containing \"ExCert\" ignoring case", ignoringCase); |
| } |
| } |