public void Should_succeed_when_using_known_template() { var data = new { name = "world" }; var result = _engine.Generate("Test", data); Assert.AreEqual("hello, world\r\n", result); }
private static string WriteToLua(WDBSheet sheet, string templateContent, string[] assemblyNames, EntryConfig config) { StringContextContainer context = new StringContextContainer(); context.Add("__sheet__", sheet); string content = TemplateEngine.Generate(context, templateContent, assemblyNames, config); context.Remove("__sheet__"); return(content); }
/// <summary> /// Go Power Rangers!!! /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnGenerateCode_Click(object sender, EventArgs e) { if (ValidateControls()) { Application.UseWaitCursor = true; List <Tuple <string, string> > tablasAProcesar = new List <Tuple <string, string> >(); // Bloqueamos los controles mientras se procesa la cosa tvDBView.Enabled = false; tvTemplates.Enabled = false; btnGenerateCode.Enabled = false; // Vamos a ver qué tablas queremos procesar foreach (TreeNode parent in tvDBView.Nodes) { if (parent.Nodes.Count > 0) { foreach (TreeNode son in parent.Nodes) { if (son.Checked) { // parent.Text = DATABASE, son.Text = TABLE tablasAProcesar.Add(new Tuple <string, string>(parent.Text, son.Text)); } } } } foreach (Tuple <string, string> tupla in tablasAProcesar) { foreach (TreeNode parent in tvTemplates.Nodes) { if (parent.Nodes.Count > 0) { foreach (TreeNode son in parent.Nodes) { if (son.Checked) { //Limpiamos el nombre de la tabla string tableName = tupla.Item2; string fileSuffix = son.Text.Substring(0, son.Text.IndexOf(".")); if (chkRemovePrefix.Checked) { if (txtPrefix.Text != string.Empty) { if (tableName.Contains(txtPrefix.Text)) { tableName = tableName.Remove(0, txtPrefix.Text.Length); tableName = string.Format("{0}{1}", tableName.Substring(0, 1).ToUpper(), tableName.Substring(1)); } } } string ext = son.Text.Contains(".cs.") ? "cs" : "vb"; string outputPath = Path.Combine(txtOutputPath.Text, String.Format("{0}{1}.{2}", tableName, son.Text, ext)); string templatePath = String.Format(@"templates\{0}\{1}.scg", parent.Text, son.Text); txtResults.AppendText(String.Format("Creando {0}{1}.{2} ... ", tableName, fileSuffix, ext)); templateEngine.Generate(tupla.Item1, tupla.Item2, tableName, outputPath, templatePath); txtResults.AppendText("OK" + Environment.NewLine); } } } Application.DoEvents(); } } txtResults.AppendText("Proceso Terminado." + Environment.NewLine); Application.UseWaitCursor = false; } // Desbloqueamos los controles al terminar tvDBView.Enabled = true; tvTemplates.Enabled = true; btnGenerateCode.Enabled = true; }