java - 如何使用 AssertJ 从列表中映射减少值并断言结果
问题描述
我有一个问题,是否可以对列表进行 map-reduce 以断言 AssertJ 框架内的缩减值。
一个普通的非 AssertJ 方法将如下所示
List<Total> totals = ...
Integer sum = totals.stream().map(Total::amount).reduce(0, Integer::sum);
assertThat(sum).isEqualTo(9999);
想知道是否有可能做类似的事情......
assertThat(totals)
.hasSize(5)
.extracting(Total::amount)
.reduce(getSum) // <= What would I put here since reduce doesn't exist that I can tell
.isEqualTo(9999);
如果答案是你不能这样做,那也没关系。我只是想知道框架是否支持它作为思想实验,并且我在 API 中找不到任何东西。
解决方案
推荐阅读
- java - 我如何知道应该将哪个模块导入 java 运行时映像?
- python - 如何在python中打印班级成员的数据?
- python - 如何将文本文件更改为二维 numpy 数组?
- docker - 将端口作为字符串提供时的 Composer 文件错误
- server - JWT验证每个页面上的签名?
- python - 使用 pandas 将日期列转换为标准格式
- ruby - 如何将 rubygem 从一个安装复制到另一个安装
- firebase - 如何计算 Firebase 原始数据中的会话长度和会话数?
- java - @Query 连接两个表
- node.js - 为什么 promise.resolve 在这种情况下永远等待?