如何将子集集合按值(结构平等)与 FluentAssertions 进行比较?

Posted

技术标签:

【中文标题】如何将子集集合按值(结构平等)与 FluentAssertions 进行比较?【英文标题】:how to compare subset collection by value (structural equiality) with FluentAssertions? 【发布时间】:2021-11-05 13:51:38 【问题描述】:

我想断言集合 A 是否是集合 B 的子集,使用结构相等比较(如 BeEquivalentTo),使用 FluentAssetion。示例:

var p1 = new Point(1,2)
var p1_1 = new Point(1,2)
var p2 = new Point(2,3)
var p3 = new Point(4,5)

var A = new []  p1 
var B = new []  p2, p1_1
var C = new []  p2, p3

A.Should().SubsetBeEquivalentTo(B) // The assert should success
A.Should().SubsetBeEquivalentTo(C) // The assertion should fail

那么,有没有办法在 FluentAssertion 库中获得 SubsetBeEquivalentTo 显示的行为?

【问题讨论】:

【参考方案1】:

很遗憾,ContainEquivalentOf 只接受单个项目。但这是一个很好的建议。也许你可以建议here。

【讨论】:

以上是关于如何将子集集合按值(结构平等)与 FluentAssertions 进行比较?的主要内容,如果未能解决你的问题,请参考以下文章

有没有办法在查询主集合时将子集合映射到结构? (火库)

数据结构树之初体验

我如何在颤振中获得 Firestore 集合和子集合

按值排序python集列表

真子集和子集如何判断?

实现一个集合覆盖数据结构