public void LogFileLogsErrorMessageWhenFileSizeIsTooLarge() { int maxFileSize = Convert.ToInt32(Constants.MaximumAllowedFileSizeInBytes); byte[] contents = Enumerable.Range(0, maxFileSize + 1).Select(p => byte.MaxValue).ToArray(); var ex = new FileSizeTooLargeException(contents.Length, Constants.MaximumAllowedFileSizeInBytes); Logger logger = new Logger(); using (TemporaryFile sourceFile = new TemporaryFile()) { File.WriteAllBytes(sourceFile.FileName, contents); using (FilesContainer filesContainer = new FilesContainer(logger)) { LoggedFile file = filesContainer.LogFile(sourceFile.FileName, null); } } LogMessage message = logger.DataContainer.LogMessages.FirstOrDefault(); Assert.IsNotNull(message); Assert.AreEqual(LogLevel.Error, message.LogLevel); Assert.IsTrue(message.Message.Contains(ex.Message)); }
public void LogStringAsFileLogsErrorMessageWhenFileSizeIsTooLarge() { int maxFileSize = Convert.ToInt32(Constants.MaximumAllowedFileSizeInBytes); string contents = string.Join(string.Empty, Enumerable.Range(0, maxFileSize + 1).Select(p => "0")); var ex = new FileSizeTooLargeException(contents.Length, Constants.MaximumAllowedFileSizeInBytes); Logger logger = new Logger(); using (FilesContainer filesContainer = new FilesContainer(logger)) { LoggedFile file = filesContainer.LogAsFile(contents, null); } LogMessage message = logger.DataContainer.LogMessages.FirstOrDefault(); Assert.IsNotNull(message); Assert.AreEqual(LogLevel.Error, message.LogLevel); Assert.IsTrue(message.Message.Contains(ex.Message)); }