public FileLoggerTests() { _settings = Substitute.For <IFileLoggerSettings>(); _settings.LogLevel.Returns(LogLevel.Info); _settings.Directory.Returns("C:\\Test"); _settings.FileName.Returns("Log_{0}.txt"); _settings.MessageFormat.Returns("{0}\t{1:yyyy-MM-dd_HH:mm}:\t{2}"); _fileSystem = Substitute.For <IFileSystem>(); _fileSystem.AppendFileAsync(Arg.Any <string>(), Arg.Any <string>()).Returns(Task.CompletedTask); _logger = new Logger.FileLogger(_settings, _fileSystem); }
protected override async Task WriteMessageAsync(string message, LogLevel logLevel) { string fileName = Path.Combine(_settings.Directory, string.Format(_settings.FileName, DateTime.UtcNow.ToString("yyyy-MM-dd"))); await _fileSystem.AppendFileAsync(fileName, message); }