Настройка ожидания для метода, который возвращает задачу - PullRequest
0 голосов
/ 17 октября 2019

Я пытаюсь смоделировать метод, который возвращает задачу, но исключением является throw.

Это мой код (или пример;)):

var mock = MockRepository.GenerateMock<IManageService>();
var otherMock = MockRepository.GenerateMock<ISuperService>();

string json = "My json tiptop";
mock.Expect(s => s.DownloadConfiguration()).Return(Task.FromResult<string>(json));

otherMock.My_Method_That_Call_DownloadConfiguration();

mock.VerifyAllExpectations();

Так обычно это должноработать, но вместо этого у меня есть следующее исключение:

"System.MissingMethodException: 'конструктор в типе' Castle.Proxies.Task`1Proxyafdd050bbee04bdfa13ea988fed08ce0 'is unound.'" (я перевожу это).

StackTrace:

"в System.RuntimeType.CreateInstanceImpl (BindingFlags bindingAttr, связыватель Binder, аргументы Object [], CultureInfo, объект [] атрибуты активации [], StackCrawlMark & ​​stackMark) *

1014

Я целый день пытался ее исправить, у меня была та же ошибка в другом методе, но это было потому, что мой метод возвращал объект, у которого не было конструктора без параметра. Но в данном случае это Задача, поэтому я не знаю, как справиться с этим.

...