【发布时间】:2019-12-05 15:58:11
【问题描述】:
我有一个包含 char 属性的对象。对于我的测试,我需要将该属性设置为除 I 或 R 之外的任何东西。有什么东西可以做,最好是 AutoFixture 原生的,我可以做些什么来获得比我想出的更简洁、更简洁的代码?
这是对象的表示
public class MyObject
{
public char MyProperty {get; set;}
}
以及我正在使用的解决方案
MyObject = _fixture.Create<MyType>();
if ((new char[] { 'I', 'R' }).Contains(MyObject.MyProperty))
MyObject.MyProperty = new Generator<char>(_fixture).Where(c => !new char[] { 'I', 'R' }.Contains(c)).First();
【问题讨论】:
-
如果您只是在寻找工作代码的优化,这似乎是一个代码审查问题。不过可能有点短:)
-
您可以创建自定义
RandomCharSequenceGeneratorgithub.com/AutoFixture/AutoFixture/blob/master/Src/AutoFixture/…,但不会更简洁。所以如果这是你唯一需要它的地方,我不会去的。如果你想要一个例子,请告诉我。
标签: c# .net autofixture