使用Build <T>时,将忽略“带有”的自定义-的自定义项

朱利安

我的目标是只能定义与特定测试相关的参数,并且在c#中使用不可变的类型(严格来说是构造函数注入,没有设置方法),并且有一个定制的夹具来处理那些不是参数的有效值在测试中指定。

我为之烦恼-忽略了我的“ with”属性-字符串,DateTime和int的属性自定义。基于“访客”的示例:

public class Guest
{
    public readonly string GuestId;
    public readonly string GivenName;
    public readonly string SurName;
    public readonly AgeCode AgeCategory;

    public Guest(string guestid, AgeCode ageCategory, string givenName, string surName)
    {
        AgeCategory = ageCategory;
        GivenName = givenName;
        SurName = surName;
        GuestId = guestid;
    }
}

我像这样自定义一个Fixture实例:

        fixture.Customize<Guest>(composer =>
            composer
                .With(g => g.GivenName, "Finn")
                .With(g => g.GuestId, "1")
                .With(g => g.SurName, "Rasmussen")
            );

...这在使用时有效fixture.Create<Guest>(),但在使用无效fixture.Build<Guest>().With(g=>g.Surname, "Olsen")在此处输入图片说明

查看AutoFixture签名,我理解这是因为Fixture.Build<T>()实例化了一个新的作曲家,并且该作曲家没有作为方法的“作曲家”实例注入Customize<T>另外-我知道属性的第一个自定义项“获胜”,因此必须将“覆盖”项推到自定义项的前面...

有什么建议么?我在这里完全按照轨道使用螺丝刀锤打钉子吗?或者我只是在这里没有看到聪明和/或明显的东西...

朱利安

对于其他发现此问题的人:可以使用以下方法更改构建类型的默认策略:

Fixture.Register<TType>(Func<TType> creator)

奇迹般有效...

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用自定义项目符号时的样式问题

ReportLab ListFlowable 使用自定义项目符号

使用CocoaPods时如何将自定义项目配置添加到Xcode?

对齐使用自定义项目符号点时自动换行的li文本

MVC 在提交时保存页面模型的自定义项列表以在 Post 方法中使用

敲除绑定,每个都带有自定义项

iOS UICollectionView带有自定义项目错误?

如何使用自定义项目适配器在ListFragment中实现右滑动?

无法使用自定义项目颜色设置服务布局样式

如何使用 NetSuite 中保存的报告中的数据自动填充自定义项目字段?

如何使用菜单布局将自定义项目添加到NavigationView?

如何使用自定义项目更改登录屏幕图像?

如何使用自定义项目属性创建<string-array>?

使用CSS的<dt>标签的自定义项目符号图标不起作用

自动修复:删除自定义项

WPF ListBox自定义项

PyQt QListWidget自定义项

Django自定义项目模板

django admin中的自定义项

Listview自定义项控件对齐

如何在使用sql数据源时在下拉列表中添加自定义项目

在keras回调中使用带有自定义参数的自定义函数

使用带有自定义构造函数的std :: set自定义比较器

UICollectionView-自定义项在部分折叠时消失

将Object []强制转换为自定义项目[]

使用:: before的自定义项目符号样式-文本节点中前两行之间的高空白

如何使用自定义项目文件夹结构在Beanstalk中部署Go Web应用程序

使用Jackson自定义Collection <T>的序列化

没有自定义项目数据类型的自定义ArrayAdapter

TOP 榜单

热门标签

归档