Пример #1
0
 /// <summary>
 /// Creates some dummy files with different previous dates, including the <see cref="BaseDate"/>.
 /// </summary>
 /// <param name="period">Rolling file period to consider.</param>
 private void CreateDummyFiles(RollingFilePeriod period)
 {
     for (var days = 0; days < 10; days++)
     {
         var date = BaseDate.AddDays(-days);
         File.Create(Path.Combine(tempFolder.FolderPath, period.GetFileName(date)));
     }
 }
Пример #2
0
        public void WhenCreatingFileWithFormat_PatternMatches(RollingFilePeriod period)
        {
            using (var tempFolder = TempFolder.Create())
            {
                var date = DateTime.Now;
                File.Create(Path.Combine(tempFolder.FolderPath, period.GetFileName(date)));

                var files = Directory.GetFiles(tempFolder.FolderPath);

                Assert.Single(files);
                Assert.True(Regex.IsMatch(Path.GetFileName(files[0]), period.FileNamePattern));

                var match = Regex.Match(Path.GetFileName(files[0]), period.FileNamePattern);
                Assert.Equal(date.ToString(period.DateFormat), match.Groups[1].Value);
            }
        }
Пример #3
0
        public void WhenWritingInDifferentPeriod_CreateNewFile(bool async, RollingFilePeriod period, int[] minutesToAdd)
        {
            using (var temp = TempFolder.Create())
            {
                WriteLogs(async, temp.FolderPath, period, minutesToAdd);

                foreach (var minutes in minutesToAdd)
                {
                    var date         = BaseDate.AddMinutes(minutes);
                    var contentsFile = File.ReadAllLines(Path.Combine(temp.FolderPath, period.GetFileName(date)));
                    var log          = string.Format("{0} [DBG] date={1}", date.ToString(DefaultDateTimeFormat),
                                                     date.ToString(period.DateFormat));

                    Assert.Equal(log, contentsFile[0]);
                }
            }
        }