gpt4 book ai didi

assertj - 如何在 assertj 中验证元素是其中之一

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

我找不到如何使用 assertj 检查以下内容(这很常见):

假设我有:

 result1 = {"AAA", "BBB"}
result2 = {"DDD"}

我想检查结果中的值是其中之一:

String[] valid = String[]{"AAA", "BBB", "CCC"};

使用 assertj,应该是这样的:

assertThat(result1).xxxx(valid);
assertThat(result2).xxxx(valid);

因此 result1 会通过检查,但 result2 不会。

contains() 不起作用(它检查结果是否包含所有有效元素)

我不想为这种检查创建自定义条件

有什么想法吗?

最佳答案

你也可以反过来:

assertThat(valid).contains(result1);
assertThat(valid).contains(result2);

如果你坚持让result在左边,valid在右边,你可以使用:

assertThat(result1).isSubsetOf(Arrays.asList(valid));
assertThat(result2).isSubsetOf(Arrays.asList(valid));

或者,为什么不将有效定义为一个集合,而不是一个数组?

Set<String> valid = Sets.newHashSet("AAA", "BBB", "CCC"); //Sets comes from google guava
assertThat(result1).isSubsetOf(valid);
assertThat(result2).isSubsetOf(valid);

关于assertj - 如何在 assertj 中验证元素是其中之一,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34371355/

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