У меня есть этот код в методе I'm модульного тестированияКак «пропустить» метод void с помощью FakeItEasy?
public void SomeMethod()
{
IMyLogger log = new Logger();
log.ConfigLogger(); // Trying to not call this method
//...some other code...
}
Где этот класс Logger
public class Logger : IMyLogger
{
public void ConfigLogger()
{
//Serilog logging code I´m trying to not call in my unittests.
Log.Logger = new LoggerConfiguration()
.MinimumLevel.Debug()
.CreateLogger();
}
}
И это мой UnitTest, где я пытаюсь издеваться прочь (не называйте код внутри метода ConfigLogger() без удачи.
public void Test()
{
var logger = A.Fake<IMyLogger>();
A.CallTo(() => logger.ConfigLogger()).DoesNothing(); //Not working..
}
Так что I'm я здесь отсутствует? Почему Думаю, это должно быть так? Несмотря на то, что специалист Serilog дал мне лучший способ убрать Serilog, я также хотел бы узнать, как «FakeItEasy - недействительный метод».