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);
        }
Exemple #2
0
 public void ClearLogs()
 {
     CalculationLogFolder.CreateIfNecessary();
     foreach (var fileName in Directory.GetFiles(CalculationLogFolder.FullName, "*.log"))
     {
         File.Delete(fileName);
     }
 }
Exemple #3
0
 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();
 }