package org.test4j.hamcrest.iassert.object.intf; import org.test4j.hamcrest.iassert.common.intf.IBaseAssert; import org.test4j.hamcrest.iassert.common.intf.IComparableAssert; import org.test4j.hamcrest.matcher.string.StringMode; /** * 字符串对象断言接口 * * @author darui.wudr * */ public interface IStringAssert extends IBaseAssert<String, IStringAssert>, IComparableAssert<String, IStringAssert> { /** * 期望2个字符串在modes模式下是相等的<br> * same as "isEqualTo(...)" * * @param expected * @param modes * @return */ IStringAssert eq(String expected, StringMode... modes); /** * 期望2个字符串在modes模式下是相等的<br> * same as "eq(...)" * * @param expected * @param modes * @return */ IStringAssert isEqualTo(String expected, StringMode... modes); /** * 断言字符串包含期望的字串${expected} * * @param expected * 期望的字串 * @param modes * 字符串预处理模式 * @return */ IStringAssert contains(String expected, StringMode... modes); /** * 断言字符串包含指定的若干个子字符串 * * @param expecteds * 期望的字符串组 * @param modes * 字符串处理模式 * @return */ IStringAssert contains(String[] expecteds, StringMode... modes); /** * 断言字符串中依次包含字串列表expecteds * * @param expected * @return */ IStringAssert containsInOrder(String... expecteds); /** * 断言字符串中依次包含若干特定模式的子字符串 * * @param expecteds * @param modes * @return */ IStringAssert containsInOrder(String[] expecteds, StringMode... modes); /** * 断言字符串以${expected}子串结尾 * * @param expected * 期望的字串 * @param modes * 字符串预处理模式 * @return */ IStringAssert end(String expected, StringMode... modes); /** * 断言字符串以${expected}子串开头 * * @param expected * 期望的字串 * @param modes * 字符串预处理模式 * @return */ IStringAssert start(String expected, StringMode... modes); /** * 断言字符串不包含指定的子字符串 * * @param sub * @param modes * 字符串预处理模式 * @return */ IStringAssert notContain(String sub, StringMode... modes); /** * 断言字符串不包含指定的子字符串 * * @param subs * @param modes * @return */ IStringAssert notContain(String[] subs, StringMode... modes); /** * 断言字符串符合正则表达式${regex} * * @param regex * 期望的正则表达式 * @return */ IStringAssert regular(String regex); /** * 断言字符串在忽略大小写的情况下等于期望值 * * @param string * 期望值 * @return */ IStringAssert eqIgnoreCase(String string); /** * 忽略字符串中所有的空白符情况下相等 * * @param string * @return */ IStringAssert eqIgnoreSpace(String string); /** * 字符串中忽略连续的空白串情况下相等<br> * 即空白符或连续的空白符当作一个空格符处理 * * @param string * 期望值 * @return */ IStringAssert eqWithStripSpace(String string); /** * 断言字符串不是空白串 * * @return */ IStringAssert notBlank(); }