不能用JustMock模拟简单对象数组

本文关键字:单对象 数组 简单 模拟 JustMock 不能 | 更新日期: 2023-09-27 17:50:54

我正在使用JustMock和AutoFac,并试图模拟一个相当简单的对象数组,但我似乎无法获得语法正确…

        var labResults = Mock.Create<LabResult[]>();
        Mock.Arrange(() => labResults).Returns(new LabResult[]
                                       {
                                           new LabResult
                                           {
                                               EstablishmentID = "0101",
                                               PatientID = "A11111111",
                                               EpisodeNo = 1,
                                               LabNumber = "975310A",
                                               Status = LabResultStatus.Initial,
                                               TestCode = "ABCD",
                                               DateUpdated = DateTime.Now
                                           },
                                           < snip >
                                           new LabResult
                                           {
                                               EstablishmentID = "0101",
                                               PatientID = "A11111112",
                                               EpisodeNo = 1,
                                               LabNumber = "975310A",
                                               Status = LabResultStatus.Final,
                                               TestCode = "ABC",
                                               DateUpdated = DateTime.Now
                                           },
                                   });

代码编译得很好,但是当运行时给我一个'System '。Mock上的ArgumentException错误。创建调用-"附加信息:值无效"。

这个问题难倒了我一整个上午,我找不到合适的例子。有人能告诉我正确的语法-它需要是一个数组回来,而不是一个列表。

欢呼

不能用JustMock模拟简单对象数组

您不需要mock。您正在模拟一个数组,它也可以手工创建,只需分配您在模拟设置的Returns部分中已经获得的值。像这样:

var labResults = new LabResult[]
{ 
    new LabResult { ... },
    new LabResult { ... },
};