作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我不确定旧版本的 FluentAssertions 是否有此功能,但我想将一个集合与另一个集合进行比较。我有一个像这样的 dto:
public class UserDTO
{
public int Id { get; set; }
public string Username { get; set; }
}
我有两个列表想要比较。
List<UserDTO> createdUsers = this.GetCreatedUser();
var expectedResults = this.dbContext.Users.Top(10);
我认为应该全部等效的最接近的事情是:
createdUsers.Should().AllBeEquivalentTo(expectedResults)
但是当我尝试通过排除项时,它似乎正在为我提供列表的排除项,而不是实体本身。
我想比较其中不包括 Id 属性的两个列表。我可以发誓有一个名为 ShouldAllBeEquivalentTo
的函数,它接受允许排除的选项,
createdUsers.ShouldAllBeEquivalentTo(expectedResults, o => o.Excluding(x => x.Id);
如何在比较集合的同时排除比较中的属性?
最佳答案
当涉及到集合和字典的排除时,文档提出了以下建议
createdUsers.Should().BeEquivalentTo(expectedResults, options => options.Excluding(_ => _.Id));
引用文档:
to assert that all instances of OrderDto are structurally equal to a single object:
orderDtos.Should().AllBeEquivalentTo(singleOrder);
关于c# - 流畅的断言 ShouldAllBeEquivalentTo,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50979353/
我不确定旧版本的 FluentAssertions 是否有此功能,但我想将一个集合与另一个集合进行比较。我有一个像这样的 dto: public class UserDTO { public
我在单元测试中使用流畅的断言,但是使用 ShouldBeEquivalentTo , ShouldAllBeEquivalentTo , 和 BeEquivalentTo不清楚。 例如;以下所有语句都
我是一名优秀的程序员,十分优秀!