是否有可能比较cactoos中的'包含'文本?

时间:2018-06-07 23:00:36

标签: java cactoos

我正在寻找某种类似于apache commons实用程序的OO,这是在java中处理它的常用方法:

StringUtils.containsIgnoreCase("foobar", "OOB")

有没有办法在cactoos中这样做?我已经阅读了源代码和测试,但没有看到任何与之相关的内容。

我不能想象它在大多数开发情况下被大量使用,但这是我经常使用自动化测试的东西。

添加更多上下文:大多数检查都与在网页上选择与客户数据匹配的值有关,但我们希望避免在UI布局中进行文本转换和格式化问题。

断言在技术上可行,但我宁愿避免使用异常来处理控制流。

2 个答案:

答案 0 :(得分:2)

我们将所有的hamcrest匹配器移动到llorllale/cactoos-matchers

org.llorllale:cactoos-matchers:0.11org.cactoos:cactoos:0.35开始,您可以:

MatcherAssert.assertThat(
  new UpperText("foobar"),
  new TextHasString("OOB")
);

我们仍然没有为MatcherAssert.assertThat提供OO替代方案 - 稍后会在#18 Assertion之后实施。

答案 1 :(得分:0)

您可以使用org.cactoos.text.Contains,更多示例请参见https://github.com/yegor256/cactoos/blob/master/src/test/java/org/cactoos/text/ContainsTest.java

    @Test
    public void stringContainsText() {
        new Assertion<>(
            "String contains other Text",
            new Contains(
                "Terra incognita",
                new TextOf("cognita")
            ),
            new ScalarHasValue<>(Boolean.TRUE)
        ).affirm();
    }