Недавно я пытался использовать FakeItEasy, но я не смог создать Fake из конкретного класса, не обойдя многие причуды.FakeItEasy Создайте подделку класса
Я попытался следующие:
public class MyObject {
public MyObject(){}
}
...
MyObject fakeObject = A.Fake<MyObject>();
Что привело в конструкторе не найден с соответствующими заданы параметры Exception
Далее я попробовал:
public class MyObject {
public MyObject(string temp){}
}
...
MyObject fakeObject = A.Fake<MyObject>(x => x.WithArgumentsForConstructor(() => new MyObject("temp")));
что привело к подобной ошибки.
Наконец я попытался:
public class MyObject {
//public MyObject(){}
}
...
MyObject fakeObject = A.Fake<MyObject>();
что позволило мне, наконец, создать подделку. Я смущен, почему большинство примеров фальсификации конкретного класса ссылаются на это легче, чем я нашел? И почему использование документированного метода, испытание № 2 выше, не сработало?
Существуют ли какие-то ограничения для подделки конкретного класса, которые не документированы?