/// <Summary> /// <c>EntityProcessor</c> is responsible for control flow of creating all of the generated output. /// </Summary> /// <param name="entities">A collection of <c>Entity</c> objects for which code is to be generated.</param> /// <param name="config">The dvgen configuration object.</param> public void Process(string templatePath, string inputPath, Dictionary <string, string> directories, bool verbose, bool stopOnErrors) { var generator = new Generator(); var eRepo = new EntityRepository(); var tRepo = new TemplateRepository(); var entities = eRepo.GetEntities(inputPath, verbose, stopOnErrors); var templates = tRepo.GetTemplates(templatePath, verbose, directories); Console.WriteLine("Generating code ..."); var count = 0; var bar = new ProgressBarSlim(entities.Count); foreach (var entity in entities) { bar.Refresh(count, entity.Name); foreach (var template in templates) { var script = generator.Generate(entity, template, verbose); WriteScript(script, directories, verbose); } count++; bar.Refresh(count, entity.Name); } }
public void show_percentage_correctly() { var console = new MockConsole(80, 60); for (int i = 1; i < 21; i++) { var pb1 = new ProgressBarSlim(20, console); pb1.Refresh(i, "cats"); } Approvals.VerifyAll(console.BufferWritten, ""); }