public void Handle(GatheredResultSet resultSet) { // Find the full path to the template file, // using current directory if argument isn't fully qualified var templatePath = Path.Combine(Environment.CurrentDirectory, _pathToTemplateFile); if (!File.Exists(templatePath)) throw new TemplateNotFoundException(templatePath); var templateName = Path.GetFileName(templatePath); var templateDirPath = Path.GetDirectoryName(templatePath); SparkViewEngine engine = GetSparkEngine(templateDirPath); try { // compile and instantiate the template string templateResult = ProcessViewTemplate(engine, templateName, resultSet); _fileWriter.Write(templateResult); } catch (Exception ex) { throw new SparkReportGenerationException("An exception occurred:" + ex.GetType().Name + "\r\n" + ex.Message); //, ex); } }
public void Handle(GatheredResultSet result) { if (string.IsNullOrEmpty(_pathToTemplateFile)) { CreateReportWithDefaultTemplate(result); return; } var generator = new SparkReportGenerator<GatheredResultSetView>(_fileWriter, _pathToTemplateFile); generator.Handle(result); }
public void Handle(GatheredResultSet result) { if (string.IsNullOrEmpty(_pathToTemplateFile)) { CreateReportWithDefaultTemplate(result); return; } var generator = new SparkReportGenerator <GatheredResultSetView>(_fileWriter, _pathToTemplateFile); generator.Handle(result); }
private void CreateReportWithDefaultTemplate(GatheredResultSet result) { var fileName = Path.GetTempFileName(); var fs = new Filesystem(); try { new ResourceWriter(fs).WriteResource("DefaultSparkTemplate.spark", fileName, true); var generator = new SparkReportGenerator<GatheredResultSetView>(_fileWriter, fileName); generator.Handle(result); } finally { fs.Delete(fileName); } }
private void CreateReportWithDefaultTemplate(GatheredResultSet result) { var fileName = Path.GetTempFileName(); var fs = new Filesystem(); try { new ResourceWriter(fs).WriteResource("DefaultSparkTemplate.spark", fileName, true); var generator = new SparkReportGenerator <GatheredResultSetView>(_fileWriter, fileName); generator.Handle(result); } finally { fs.Delete(fileName); } }
public void Handle(GatheredResultSet result) { TestResult = result; }
public void Handle(GatheredResultSet result) { var generator = new SparkReportGenerator<GatheredResultSetView>(_fileWriter, _pathToTemplateFile); generator.Handle(result); }
private string ProcessViewTemplate(ISparkViewEngine engine, string templateName, GatheredResultSet result) { var view = (SparkView) engine.CreateInstance( new SparkViewDescriptor() .AddTemplate(templateName)); view.Model = result; var sb = new StringBuilder(); using (var writer = new StringWriter(sb)) { view.RenderView(writer); } return sb.ToString(); }