Я новичок в FakeItEasy и попытаюсь решить проблему.Не виртуальные методы не могут быть перехвачены
У меня есть класс
public class Events
{
public List<Events> SaveEvents()
{
// Call to repository and return 1(success) or -1(fail)
//If the repository return 1 then need to make another call to save the action in db
//Sample Code here
AuditLogService log = new AuditLogService();
log.CallLog();
}
}
Вот код теста:
[TestMethod]
public void EventValidation()
{
//Arrange
var Fakeevents = A.Fake<Events>();
var log = A.Fake<AuditLogService>();
var _EventsController = new EventsController(Fakeevents);
_EventsController.SaveEvents();
A.CallTo(
() => Fakeevents.SaveEvents().Retunr(1).AssignsOutAndRefParameters(status)
A.CallTo(
() => log.CallLog()).MustHaveHappened(Repeated.AtLeast.Once);
}
I am getting error like "Non virtual methods can not be intercepted"
Я хочу, чтобы проверить, является ли метод Calllog вызывается после успеха или нет.
Может кто-нибудь, пожалуйста, помогите мне в этом.
У меня есть метод и внутри метода, я инициирую другой класс и вызывая метод класса. Я хочу проверить из fakeItEasy, вызван ли метод.