请问关于c的具体应用场景有哪些?
- 内容介绍
- 文章标签
- 相关推荐
本文共计496个文字,预计阅读时间需要2分钟。
我有一段类似单元测试的代码,如下所示:plaintext// version3 应该是 version2 的副本,但有某些差异version3.Data.ShouldBeEquivalentTo(version2, option=option.Excluding(x=> x.Id).Excluding(x=> x.Status).Excluding(x=> x.Stale));简化后的内容:plaintextversion3 应该与 version2 相等,但排除 Id, Status 和 Stale 属性。
// version3 should be a copy of version2 with some differences version3.Data.ShouldBeEquivalentTo(version2, option => option .Excluding(x => x.Id) .Excluding(x => x.Status) .Excluding(x => x.Stale) .Excluding(x => x.Body) .Excluding(x => x.CreatedBy) .Excluding(x => x.UpdatedBy), "because version3 is version2 updated");
然后再说一遍
// version4 should be a copy of version3 with some differences version4.Data.ShouldBeEquivalentTo(version3, option => option .Excluding(x => x.Id) .Excluding(x => x.Status) .Excluding(x => x.Stale) .Excluding(x => x.Body) .Excluding(x => x.CreatedBy) .Excluding(x => x.UpdatedBy), "because version4 is version3 updated");
我怎样才能选择出选项?
我想做这样的事情:
// version3 should be a copy of version2 with some differences version3.Data.ShouldBeEquivalentTo(version2, option => baseOption, "because version3 is version2 updated");
甚至可能是这样的:
// version3 should be a copy of version2 with some differences version3.Data.ShouldBeEquivalentTo(version2, option => baseOption .Excluding(x => x.OtherProperty), "because version3 is version2 updated"); 在外部声明选项委托作为基础
Func<FluentAssertions.Equivalency.EquivalencyAssertionOptions<MyDataType>, FluentAssertions.Equivalency.EquivalencyAssertionOptions<MyDataType>> baseOption = option => option .Excluding(x => x.Id) .Excluding(x => x.Status);
并将其与断言一起使用
// version3 should be a copy of version2 with some differences version3.Data.ShouldBeEquivalentTo(version2, baseOption, "because version3 is version2 updated");
对于需要在基础上构建的其他断言,您必须调用委托并附加其他选项
// version3 should be a copy of version2 with some differences version3.Data.ShouldBeEquivalentTo(version2, option => baseOption(option) .Excluding(x => x.OtherProperty), "because version3 is version2 updated");
您应该注意,在较新版本的框架中,不推荐使用当前使用的语法.
version3.Should().BeEquivalentTo(version2, baseOption, "because version3 is version2 updated");
本文共计496个文字,预计阅读时间需要2分钟。
我有一段类似单元测试的代码,如下所示:plaintext// version3 应该是 version2 的副本,但有某些差异version3.Data.ShouldBeEquivalentTo(version2, option=option.Excluding(x=> x.Id).Excluding(x=> x.Status).Excluding(x=> x.Stale));简化后的内容:plaintextversion3 应该与 version2 相等,但排除 Id, Status 和 Stale 属性。
// version3 should be a copy of version2 with some differences version3.Data.ShouldBeEquivalentTo(version2, option => option .Excluding(x => x.Id) .Excluding(x => x.Status) .Excluding(x => x.Stale) .Excluding(x => x.Body) .Excluding(x => x.CreatedBy) .Excluding(x => x.UpdatedBy), "because version3 is version2 updated");
然后再说一遍
// version4 should be a copy of version3 with some differences version4.Data.ShouldBeEquivalentTo(version3, option => option .Excluding(x => x.Id) .Excluding(x => x.Status) .Excluding(x => x.Stale) .Excluding(x => x.Body) .Excluding(x => x.CreatedBy) .Excluding(x => x.UpdatedBy), "because version4 is version3 updated");
我怎样才能选择出选项?
我想做这样的事情:
// version3 should be a copy of version2 with some differences version3.Data.ShouldBeEquivalentTo(version2, option => baseOption, "because version3 is version2 updated");
甚至可能是这样的:
// version3 should be a copy of version2 with some differences version3.Data.ShouldBeEquivalentTo(version2, option => baseOption .Excluding(x => x.OtherProperty), "because version3 is version2 updated"); 在外部声明选项委托作为基础
Func<FluentAssertions.Equivalency.EquivalencyAssertionOptions<MyDataType>, FluentAssertions.Equivalency.EquivalencyAssertionOptions<MyDataType>> baseOption = option => option .Excluding(x => x.Id) .Excluding(x => x.Status);
并将其与断言一起使用
// version3 should be a copy of version2 with some differences version3.Data.ShouldBeEquivalentTo(version2, baseOption, "because version3 is version2 updated");
对于需要在基础上构建的其他断言,您必须调用委托并附加其他选项
// version3 should be a copy of version2 with some differences version3.Data.ShouldBeEquivalentTo(version2, option => baseOption(option) .Excluding(x => x.OtherProperty), "because version3 is version2 updated");
您应该注意,在较新版本的框架中,不推荐使用当前使用的语法.
version3.Should().BeEquivalentTo(version2, baseOption, "because version3 is version2 updated");

