private static async Task SaveExceptionAsync(IFolder exceptionLogFolder, string title, string message, string stackTrace, string innerMessage, string innerStackTrace, Func <SavedException, Task> onExceptionSaved) { exceptionLogFolder.CreateIfNecessary(); var fileContents = "Title:\r\n" + title + "\r\nMessage:\r\n" + message + "\r\nStack trace:\r\n" + stackTrace + "\r\nInner message:\r\n" + innerMessage + "\r\nInner stack trace:\r\n" + innerStackTrace; var md5 = MD5.Create(); var inputBytes = Encoding.UTF8.GetBytes(fileContents); var hash = md5.ComputeHash(inputBytes); var sb = new StringBuilder(); foreach (var t in hash) { sb.Append(t.ToString("X2")); } var exceptionName = "Exception-" + sb; var fileName = exceptionLogFolder.FullName + '\\' + exceptionName + ".txt"; await File.WriteAllTextAsync(fileName, fileContents); var savedException = new SavedException { ExceptionName = exceptionName, FileContents = fileContents, FileFullName = fileName }; await onExceptionSaved(savedException); }
public void ClearLogs() { CalculationLogFolder.CreateIfNecessary(); foreach (var fileName in Directory.GetFiles(CalculationLogFolder.FullName, "*.log")) { File.Delete(fileName); } }
public SecretRepositoryTest() { AppDataSpecialFolder = new Folder(Path.GetTempPath()).SubFolder("AspenlaubTemp").SubFolder("NoSecrets"); if (AppDataSpecialFolder.Exists()) { var deleter = new FolderDeleter(); deleter.DeleteFolder(AppDataSpecialFolder); } AppDataSpecialFolder.CreateIfNecessary(); }
public void Initialize() { var container = new ContainerBuilder().UsePegh("Pegh", new DummyCsArgumentPrompter()).Build(); _MethodNamesFromStackFramesExtractor = container.Resolve <IMethodNamesFromStackFramesExtractor>(); var logConfiguration = new LogConfiguration(nameof(SimpleLogReaderTest)); _Flusher = new SimpleLogFlusher(); _Logger = new SimpleLogger(logConfiguration, _Flusher, _MethodNamesFromStackFramesExtractor); _LogFolder = new Folder(Path.GetTempPath()).SubFolder(_Logger.LogSubFolder); _LogFolder.CreateIfNecessary(); foreach (var fileName in Directory.GetFiles(_LogFolder.FullName, "*.log")) { File.Delete(fileName); } _StartOfTestTime = DateTime.Now; _Sut = new SimpleLogReader(); }
public DotNetCakeInstaller(IProcessRunner processRunner) { vProcessRunner = processRunner; vWorkingFolder = new Folder(Path.GetTempPath()).SubFolder(nameof(DotNetCakeInstaller)); vWorkingFolder.CreateIfNecessary(); }