public Task <bool> Confirm(GenerateFileScenarioSettings settings) { Console.Clear(); xConsole.WriteHeader($"Generating file:\n"); Console.WriteLine($"File path : {settings.FilePath}"); Console.WriteLine($"File size : {settings.FileSize.ToString("#,###,##0")} Bytes"); Console.WriteLine($"Percent of appearance: {settings.PercentOfAppearance:##0}%"); var choice = xConsole.Ask("Proceed? (y/n) "); return(Task.FromResult(choice)); }
private TimeSpan GenerateFile(GenerateFileScenarioSettings settings) { var watch = new Stopwatch(); watch.Start(); _generator.Generate( settings.FilePath, settings.FileSize, settings.BufferSize, settings.PercentOfAppearance ); watch.Stop(); return(watch.Elapsed); }
private Task <GenerateFileScenarioSettings> GetUniqueLineSettings() { var settings = new GenerateFileScenarioSettings(); Console.Clear(); xConsole.WriteHeader("Enter parameters to generate \"Number. String\" File:"); Console.WriteLine(); xConsole.WriteQuestion("Enter file path: "); settings.FilePath = xConsole.ReadString(); xConsole.WriteQuestion("Enter file size in bytes: "); settings.FileSize = xConsole.ReadLong(); var defaultBufferSize = Config.GetApplicationSetting <int>("DefaultBufferSize"); settings.BufferSize = defaultBufferSize; settings.PercentOfAppearance = 0; return(Task.FromResult(settings)); }
private Task <GenerateFileScenarioSettings> GetCustomSettings() { var settings = new GenerateFileScenarioSettings(); Console.Clear(); xConsole.WriteHeader("Enter parameters to generate \"Number. String\" File:"); Console.WriteLine(); xConsole.WriteQuestion("Enter file path: "); settings.FilePath = xConsole.ReadString(); xConsole.WriteQuestion("Enter file size in bytes: "); settings.FileSize = xConsole.ReadLong(); var defaultBufferSize = Config.GetApplicationSetting <int>("DefaultBufferSize"); settings.BufferSize = defaultBufferSize; var defaultPercentOfAppearance = Config.GetApplicationSetting <int>("DefaultPercentOfAppearance"); xConsole.WriteQuestion($"Percent of appearance (default: {defaultPercentOfAppearance:##0}%): "); settings.PercentOfAppearance = xConsole.ReadInt(defaultPercentOfAppearance); settings.PercentOfAppearance = settings.PercentOfAppearance >= 0 && settings.PercentOfAppearance <= 100 ? settings.PercentOfAppearance : defaultPercentOfAppearance; if (settings.PercentOfAppearance <= 0) { settings.PercentOfAppearance = 1; } return(Task.FromResult(settings)); }