AssertJ中的filteredOn在assertk中有什么等价物?
创始人
2024-09-20 16:00:43
0

assertk 提供了枚举类 KFunction,可以使用该类的属性来获取对象列表中指定字段的属性值并进行断言。举个例子,假设现在有一个 Book 类,包含 title 和 author 两个属性,我们要对 title 进行断言。

在 AssertJ 中,可以使用 filteredOn 方法:

List books = Arrays.asList(
    new Book("The Lord of the Rings", "J. R. R. Tolkien"),
    new Book("The Hobbit", "J. R. R. Tolkien"),
    new Book("Harry Potter and the Philosopher's Stone", "J. K. Rowling")
);

assertThat(books).filteredOn(book -> book.getAuthor().equals("J. R. R. Tolkien"))
                  .extracting(Book::getTitle).containsOnly("The Lord of the Rings", "The Hobbit");

在 assertk 中,可以使用枚举类 KFunction:

val books = listOf(
    Book("The Lord of the Rings", "J. R. R. Tolkien"),
    Book("The Hobbit", "J. R. R. Tolkien"),
    Book("Harry Potter and the Philosopher's Stone", "J. K. Rowling")
)

assertThat(books).hasSize(3)
                 .extracting { it[KFunction(Book::author)] } // 获取 Book 列表中 author 属性的值
                 .containsOnly("J. R. R. Tolkien", "J. R. R. Tolkien", "J. K. Rowling")

在上面的例子中,我们可以使用 KFunction(Book::author) 获取 Book 类中 author 属性的属性值,并确保它们都被包含在返回的列表中。

相关内容

热门资讯

透视普及"hhpok... 透视普及"hhpoker到底可以作必弊吗"都是真的是有辅助app(哔哩哔哩)1.hhpoker到底可...
透视详细"pokem... 透视详细"pokemmo手机版透视脚本"确实是真的辅助挂(哔哩哔哩)1、pokemmo手机版透视脚本...
透视推荐"wepok... 透视推荐"wepoker公共底牌"本来存在有辅助挂(哔哩哔哩)1、wepoker公共底牌脚本辅助下载...
透视分享"poker... 透视分享"pokerworld破解版下载"原来是有辅助方法(哔哩哔哩)1、下载好pokerworld...
透视必备"哈糖大菠萝... 透视必备"哈糖大菠萝挂法"切实真的有辅助技巧(哔哩哔哩)1、每一步都需要思考,不同水平的挑战哈糖大菠...
透视必备"hhpok... 透视必备"hhpoker辅助器"都是是有辅助教程(哔哩哔哩)1、每一步都需要思考,不同水平的挑战会更...
透视透视"poker... 透视透视"pokernow辅助控制"果然是有辅助脚本(哔哩哔哩)在进入pokernow辅助控制软件靠...
透视科普"wepok... 透视科普"wepoker-h5下载"都是存在有辅助工具(哔哩哔哩)1、wepoker-h5下载免费脚...
透视普及"德普之星透... 透视普及"德普之星透视免费"切实存在有辅助器(哔哩哔哩)一、德普之星透视免费游戏安装教程牌型概率发牌...
透视有挂"wepok... 透视有挂"wepoker数据分析"其实是真的辅助技巧(哔哩哔哩)1、游戏颠覆性的策略玩法,独创攻略技...