Мне нужно протестировать метод типа void
, он просто вставляет сообщение в мою переменную LOG с использованием каркаса LOG ( Serilog ).
См. Пример реализации:
public class MyClass
{
public MyClass(ILogger<IProcess> logger)
{
this.logger = logger;
}
private readonly ILogger logger;
//...Anothers methods...
public void LogInit(Guid processId, string folder, string[] args)
{
var myObject = new
{
ProcessId = processId,
Folder = folder,
Arguments = args
};
this.logger.LogWarning("{@myObject}", myObject);
}
}
В этом сценарии нам необходимо создать тест для LogInit (...)
Нужно ли тестировать этот метод?Или, скорее, имеет ли смысл его существование?
Я читал кое-что о:
«Если ваш метод не имеет побочных эффектов и ничего не возвращает, тогдаон ничего не делает. "
В этом случае метод был создан только" отдельно ", чтобы поддерживать организацию кода и разделять обязанности класса немного больше.
Это имеет смысл?
РЕДАКТИРОВАТЬ: @ PeterBons
У нас нет доступа к сообщениям, зарегистрированным в интерфейсе (logger
), например: this.logger.GiveMeWarningLogs()
...