gpt4 book ai didi

collections - JUnit:检查集合是否仅包含某种类型的对象

转载 作者:行者123 更新时间:2023-12-01 02:48:39 26 4
gpt4 key购买 nike

假设我有一个返回 Animal 集合的方法s。在一种情况下,我想检查此方法是否恰好包含 7 Dog s。检查数字不是问题,但是您如何检查所有动物是否都是 Dog 的实例? ?

我想我可以循环遍历该集合,但是是否有更多的 JUnity 说“断言此集合仅包含属于狗的对象”?

最佳答案

JUnit 的断言方法不适合这种特定的东西。最好的办法是创建一个通用的辅助函数,如下所示:

public static void assertTypeForAll(Collection<?> c, Class<?> type) {
for (Object o : c) {
Assert.assertTrue("Object " + o + " should be a subclass of " + type, type.isInstance(o));
}
}

然后你可以写:
assertTypeForAll(animals, Dog.class);

关于collections - JUnit:检查集合是否仅包含某种类型的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6292969/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com