此匹配器检查一组匹配器,如果它们都成功则成功。
签名内容如下:
public static <T> Matcher<T> allOf(Iterable<Matcher<? extends T>> matchers)
为什么这需要一个可迭代的
Matcher<? extends T>
并不是
Matcher<? super t>
如果它是正确的,请解释。
类型将从被匹配(测试)的对象中推断出来,所以我希望迭代器持有与被匹配对象或其任何超类兼容的匹配器。同样,允许可迭代对象保存仅与子类兼容的匹配器似乎是错误的。