У меня есть вызов метода SaveDocument()
в классе DocumentStorageHandler
DocumentManagementRequestModel docRequest=new DocumentManagementRequestModel
{
Parameters = parameters,
ProviderAlias = providerAlias
};
_documentSaver.SaveDocument(docRequest);
, а класс Parameter
имеет вид
public class DmuParameter
{
public string Name { get; set; }
public Object Value { get; set; }
public string ParameterDirection { get; set; }
public string Category { get; set; }
}
Когда я пытаюсь написать модульный тест для него, он терпит неудачу с "Ожидаемым вызовом на макет по крайней мере один раз, но никогда не был выполнен".
_mockedDocumentSaver.Setup(d => d.SaveDocument(
It.Is<DocumentManagementRequestModel>(
d => d.Parameters.Exists(
p => p.Category == "category"
&& p.Name == "FileLocation"
&& p.Value.ToString() == "\\\\charon.cmiprog.com\\Devinet\\Documaker\\Api\\Temp\\1234567-00-00000-IdCardsPL.pdf"
&& p.ParameterDirection == "Input"))));
_mockedDocumentSaver.Verify(c=>c.SaveDocument(It.Is<DocumentManagementRequestModel>(
d=>d.Parameters.Exists(p=>
p.Category == "category"
&& p.Name == "FileLocation"
&& p.Value.ToString() ==
"\\\\charon.cmiprog.com\\Devinet\\Documaker\\Api\\Temp\\1234567-00-00000-IdCardsPL.pdf"
&& p.ParameterDirection == "Input"
))),Times.AtLeastOnce);
Разве это не правильный способ, которым я проверяю вызов на макете. Я не уверен, что мне не хватает.
Для дополнительной информации прикреплены снимки экрана.
![In code](https://i.stack.imgur.com/HDBIj.png)