java - AssertJ 断言 List<Long> 仅包含 long[]

标签 java junit assertj

有没有办法断言 List 仅包含/恰好包含 long[] 数组?

代码:

 // arrange
    long[] result = {1, 2, 3, 4, 5};

    // act
    List<Long> digitPowNumbers = SumDigPower.findDigitPowNumbers(1, 6);

    // assert
    assertThat(digitPowNumbers).containsExactly(result);
}

我收到无法解析方法 containsExactly(long[])。我该如何做这个断言?有没有一种方法无需在 containsExactly 中输入 1, 2, 3, 4, 5

最佳答案

containsExactly() 需要一个与列表具有相同元素类型的数组,即 Long,而不是原始 long。更改您的数组类型,它应该可以工作:

Long[] result = {1L, 2L, 3L, 4L, 5L};

关于java - AssertJ 断言 List<Long> 仅包含 long[],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42215285/

相关文章:

java - 如何将 Spring Security .antMatchers() 与多个路径一起使用

java - IRC 自动回复机器人没有响应

java - LibGDX/Java 奇怪的行为

java - 在 JUnit 4.11 中找不到类

java - AssertJ:使用自定义比较器进行流畅的排序测试

java - 使用assertj时是否可以记录被断言的字段的名称和值以及条件?

java - 解锁手机后 Android 相机预览停止

java - 如何使用 VSCode 执行没有 main 方法的 java 程序?

java - 如何将系统属性传递给 intelliJ IDE 中的 Maven 测试

java - 如何使用 AssertJ 检查一个属性值计数的对象列表?