【发布时间】:2014-08-09 18:51:02
【问题描述】:
我正在尝试编写一个自定义匹配器,它可以在对象图的深处导航以检查重要属性。
assertThat( writeRequest, hasRole("admin") );
如果失败,我希望看到如下消息:
Expected: "admin"
but: was "read-only"
但是,当断言失败时,它会在writeRequest 上打印出toString(),这意味着我想要的信息将在字符串的深处。更糟糕的是,沿着对象图生成了一个不@Override Object.toString() 的类,因此您甚至无法找出(没有日志记录或断点)用户的实际角色!
那么,在 Hamcrest 中,有没有办法自定义出现在 but: was 子句中的输出?
【问题讨论】:
标签: hamcrest