【发布时间】:2010-03-24 16:08:20
【问题描述】:
我想使用 hamcrest 来断言两个映射是相等的,即它们具有指向相同值的相同键集。
我目前的最佳猜测是:
assertThat( affA.entrySet(), hasItems( affB.entrySet() );
给出:
Assert类型中的方法assertThat(T, Matcher<T>)不适用于参数 (Set<Map.Entry<Householdtypes,Double>>, Matcher<Iterable<Set<Map.Entry<Householdtypes,Double>>>>)
我还研究了 containsAll 的变体,以及 hamcrest 软件包提供的其他一些变体。谁能指出我正确的方向?还是我必须编写一个自定义匹配器?
【问题讨论】:
-
我也试过
containsAll等。前段时间它似乎没有用 - 显然hamcrest有点不可靠:-( -
Map 实现的
.equals()不能使用有什么原因吗? -
啊 - 我没有意识到集合可以进行正确的 .equals() 比较。一直都是这样吗?这让生活更轻松!谢谢!
标签: java collections hamcrest