Я использую JustMock и AutoFac и пытаюсь издеваться массивом довольно простых объектов, но я просто не могу показаться, чтобы получить правильный синтаксис ...Не может издеваться простым массивом объектов с JustMock
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.ArgumentException» в вызове Mock.Create - «Дополнительная информация: значение было недопустимым».
У меня все утро было в тупике, и я нигде не могу найти подходящий пример. Может кто-нибудь, пожалуйста, скажите мне правильный синтаксис - он должен быть массивом, который возвращается, а не List.
Cheers
Это так много. Когда я начал использовать макеты в своих тестах, я в конечном итоге пытался издеваться над всем и всеми. В общем, я только макет/заглушка, когда это дорогостоящий ресурс (т. Е. Когда он использует сеть, IO, DB, ...) или когда я просто хочу проверить правильность сотрудничества между компонентами (т. Е. Проверяет ли моя система вывести правильные сообщения своему сотруднику?). Издевательские коллекции или дешевые и простые в конструкции входные аргументы приводят к большей (и сомнительной ненужной) работе. – prgmtc
Особенно на языке, таком как C#, где вам нужны интерфейсы или виртуальное ключевое слово во всем мире, чтобы насмешливая структура эффективно работала на таком низком уровне. – prgmtc
@ jimmy_keen Ну, durrr ... не чувствую себя дураком. Вы, конечно, совершенно правы, ответ все время говорил мне в лицо. Спасибо. – Mike