public void TemplaterConstructorTest() { ApplicationSettings applicationSettings = new ApplicationSettings(); WebSettings webSettings = new WebSettings(); Templater <ArachnodeDAO> target = new Templater <ArachnodeDAO>(applicationSettings, webSettings); Assert.Inconclusive("TODO: Implement code to verify target"); }
public void ToValueWithReplaceBracketTest() { Assert.AreEqual("[Second]", Templater.ToValue("[First]", "first", "[Second]")); Assert.AreEqual(" [Second]", Templater.ToValue(" [First]", "first", "[Second]")); Assert.AreEqual("[Second] ", Templater.ToValue("[First] ", "first", "[Second]")); Assert.AreEqual("Created [CreateDate] modified [ModifyDate]\r\nby [Login] on [Computer]", Templater.ToValue("Created [CreateDate] modified [ModifyDate]\r\nby [Login] on [Computer]", "Computer", "[Computer]")); }
public void GeneratesHtmlWithoutModel() { var mockModelConverter = new Mock <IModelConverter>(); var sut = new Templater(mockModelConverter.Object); var result = sut.AddTemplate("<div>This is a test</div>") .AddTemplate("<div>new row</div>") .Build(); result.Should().Be("<div>This is a test</div><div>new row</div>"); }
public void TemplateRendersSuccessfully() { #if !__MonoCS__ var a = new TradeStats.PowerStats("a", 1, 1, 1, 1, 1, 1); #endif var tmpl = new Templater("template.html"); var save = new Save(); save.Player = "MEE"; string contents = tmpl.Render(StatsModule.Aggregate(save)); StringAssert.Contains("MEE", contents); }
private void sendMessageButton_Click(object sender, EventArgs e) { try { //Let us create a data source in this case Hastable that would //used to demonstrate the merging // Take the form variables collection as the data source. Hashtable dataSource = new Hashtable(); dataSource.Add("FIRSTNAME", _tbFirstName.Text); dataSource.Add("LASTNAME", _tbLastName.Text); dataSource.Add("EMAIL", _tbEmail.Text); dataSource.Add("ORDER_ID", _tbOrderId.Text); dataSource.Add("CUSTOMER_ID", "1"); dataSource.Add("PRODUCTS_TEXT", (string)_comboProduct.SelectedItem); // We create the templater object. ActiveUp.Net.Mail.Templater templater = new Templater(@"MailTemplate_for_datasource.xml"); // We instanciante the Merger object by passing the templater data. Merger merger = new Merger(); // We merge our DataSource and send the mail. merger.MergeMessage(templater.Message, dataSource, false); this.AddLogEntry("Sending template message."); string smtp = string.Empty; if (_cbUseSmtpFromTemplate.Checked) { smtp = templater.SmtpServers[0].Host; } else { smtp = smtpServerAddressTextbox.Text; } templater.Message.Send(smtp); this.AddLogEntry("Message sent successfully."); } catch (SmtpException ex) { this.AddLogEntry(string.Format("Smtp Error: {0}", ex.Message)); } catch (Exception ex) { this.AddLogEntry(string.Format("Failed: {0}", ex.Message)); } }
public void ToValueQuotedTest() { Assert.AreEqual("Please enter correct data. Kolumna 'SendDate' nie zezwala na wartości zerowe.", Templater.ToValue("Please enter correct data. Kolumna 'SendDate' nie zezwala na wartości zerowe.", "index", "test")); Assert.AreEqual("Please enter correct data. Kolumna [Data utworzenia] nie zezwala na wartości zerowe.", Templater.ToValue("Please enter correct data. Kolumna 'SendDate' nie zezwala na wartości zerowe.", "senddate", "[Data utworzenia]")); Assert.AreEqual("test", Templater.ToValue("'field'", "field", "test")); Assert.AreEqual("field'", Templater.ToValue("field'", "field", "test")); Assert.AreEqual("'field", Templater.ToValue("'field", "field", "test")); }
static void Main(string[] args) { Person[] model = new[] { new Person { Name = "foo" }, new Person { Name = "bar" } }; System.Console.WriteLine(Templater.Run(model)); System.Console.ReadLine(); }
public async Task InstallAsync() { Console.WriteLine($"Provisioning {_vm.VmName}"); var installScript = await File.ReadAllTextAsync("Scripts\\install-rabbitmq.sh"); installScript = Templater.Replace(installScript, new Dictionary <string, string>() { { "<Username>", _config.RmqAdminUsername }, { "<Password>", _config.RmqAdminPassword } }); _vmHelper.UploadFileText(installScript, $"/home/{_vm.Username}/install-rabbitmq.sh"); await _vmHelper.RunCommandOverSsh("bash ~/install-rabbitmq.sh"); Console.WriteLine($"Finished provisioning {_vm.VmName}"); }
public async Task FederateAsync(IEnumerable <string> upstreamFqdns) { var script = await File.ReadAllTextAsync("Scripts\\federate-rabbitmq.sh"); var fqdnList = string.Join(", ", upstreamFqdns.Select(f => $"\"amqp://*****:*****@{f}\"")); script = Templater.Replace(script, new Dictionary <string, string>() { { "<FQDN_LIST>", fqdnList } }); _vmHelper.UploadFileText(script, $"/home/{_vm.Username}/federate-rabbitmq.sh"); Console.WriteLine($"Running federation script on {_vm.VmName}"); await _vmHelper.RunCommandOverSsh("bash ~/federate-rabbitmq.sh"); Console.WriteLine($"Finished running federation script on {_vm.VmName}"); }
public void ToNamesTest() { DataTable table = new DataTable(); DataColumn column1 = table.Columns.Add(); column1.ColumnName = "first"; column1.Caption = "Przykład pierwszy"; DataColumn column2 = table.Columns.Add(); column2.ColumnName = "second"; column2.Caption = "Druga kolumna"; Assert.AreEqual("-[first]-", Templater.ToNames(table.Columns, "-[first]-")); Assert.AreEqual("-[second]-", Templater.ToNames(table.Columns, "-[second]-")); Assert.AreEqual("-[first]-", Templater.ToNames(table.Columns, "-[Przykład pierwszy]-")); Assert.AreEqual("-[first]-", Templater.ToNames(table.Columns, "-[ Przykład pierwszy ]-")); Assert.AreEqual("-[first]/[second]-", Templater.ToNames(table.Columns, "-[ Przykład pierwszy ]/[Druga kolumna]-")); Assert.AreEqual("-[second]-", Templater.ToNames(table.Columns, "-[ Druga kolumna ]-")); }
public async Task InstallAsync() { var installScript = await File.ReadAllTextAsync("Scripts\\install-appserver.sh"); _vmHelper.UploadFileText(installScript, $"/home/{_vm.Username}/install-appserver.sh"); var startScript = await File.ReadAllTextAsync("Scripts\\start-appserver.sh"); _vmHelper.UploadFileText(startScript, $"/home/{_vm.Username}/start-appserver.sh"); await _vmHelper.RunCommandOverSsh($"bash /home/{_vm.Username}/install-appserver.sh"); // Choose a "random" hostname from the list // of RMQ nodes for this datacenter var hostname = _rmqVms .OrderBy(x => Guid.NewGuid()) .Take(1) .Select(vm => vm.IpAddress.Fqdn) .Single(); var replacementValues = new Dictionary <string, string>() { { "<RmqUserName>", _config.RmqAdminUsername }, { "<RmqPassword>", _config.RmqAdminPassword }, { "<RmqHostName>", hostname }, { "<VmUserName>", _vm.Username } }; var consumerConfig = await File.ReadAllTextAsync("Scripts\\consumer-config.toml"); consumerConfig = Templater.Replace(consumerConfig, replacementValues); var producerConfig = await File.ReadAllTextAsync("Scripts\\producer-config.toml"); producerConfig = Templater.Replace(producerConfig, replacementValues); _vmHelper.UploadFileText(consumerConfig, $"/home/{_vm.Username}/Consumer/consumer-config.toml"); _vmHelper.UploadFileText(producerConfig, $"/home/{_vm.Username}/Producer/producer-config.toml"); await _vmHelper.RunCommandOverSsh($"bash /home/{_vm.Username}/start-appserver.sh"); }
//[InlineData("crasher.docx")] public void CompileErrors(string name) { DirectoryInfo sourceDir = new DirectoryInfo("../../../../test/templates/"); FileInfo templateDocx = new FileInfo(Path.Combine(sourceDir.FullName, name)); DirectoryInfo destDir = new DirectoryInfo("../../../../test/history/dot-net-results"); FileInfo outputDocx = new FileInfo(Path.Combine(destDir.FullName, name)); string templateName = outputDocx.FullName; templateDocx.CopyTo(templateName, true); var extractResult = OpenDocx.FieldExtractor.ExtractFields(templateName); Assert.True(File.Exists(extractResult.ExtractedFields)); Assert.True(File.Exists(extractResult.TempTemplate)); var templater = new Templater(); // warning... the file 'templateName + "obj.fields.json"' must have been created by node.js external to this test. (hack/race) var compileResult = templater.CompileTemplate(templateName, extractResult.TempTemplate, templateName + "obj.fields.json"); Assert.True(compileResult.HasErrors); Assert.True(File.Exists(compileResult.DocxGenTemplate)); }
static void Main(string[] args) { const string htmlBodyTemplate = "thankyou_html.spark"; const string textBodyTemplate = "thankyou_text.spark"; var templateFolder = Path.Combine(GetLocalDirectory(), "Templates"); var mailDropDirectory = Path.Combine(GetLocalDirectory(), "MailDrop"); if (!Directory.Exists(mailDropDirectory)) Directory.CreateDirectory(mailDropDirectory); var smtp = new SmtpMailSender(mailDropDirectory); var templater = new Templater(templateFolder); var mailCount = 0; foreach (var order in Database.RetrieveOrders()) { var htmlBody = templater.Populate(htmlBodyTemplate, order); var textBody = templater.Populate(textBodyTemplate, order); smtp.SendMail("*****@*****.**", order.CustomerEmail, "Your Order from SparkStore", textBody, htmlBody); mailCount++; } Console.WriteLine("Generated {0} e-mails in drop folder {1}", mailCount, mailDropDirectory); Console.WriteLine("Press any key to exit..."); Console.ReadKey(false); }
private void sendMessageButton_Click(object sender, EventArgs e) { this.AddLogEntry("Creating templater."); // We create the templater objet. try { ActiveUp.Net.Mail.Templater templater = new Templater(@"MailFormat.xml"); this.AddLogEntry("Sending template message."); string smtp = string.Empty; if (_cbUseSmtpFromTemplate.Checked) { smtp = templater.SmtpServers[0].Host; } else { smtp = smtpServerAddressTextbox.Text; } templater.Message.Send(smtp); this.AddLogEntry("Message sent successfully."); } catch (SmtpException ex) { this.AddLogEntry(string.Format("Smtp Error: {0}", ex.Message)); } catch (Exception ex) { this.AddLogEntry(string.Format("Failed: {0}", ex.Message)); } }
public void AllTests() { var configuration = new ConfigurationBuilder() .AddJsonFile("appsettings.json") .SetBasePath(PathExtensions.CurrentDirectoryWithoutDevelopmentRelativeSubpath) .Build() .EnableTemplate(); var finder = Templater.GetConfigurationTemplateKeyFinder(); Assert.NotEmpty(finder.AllNames); foreach (var section in configuration.GetChildren()) { // 支持键引用 var result = finder.Format(section.Key, out var replaced); if (replaced) { Assert.NotEqual(section.Key, result); } else { Assert.Equal(section.Key, result); } // 支持值引用 result = finder.Format(section.Value, out replaced); if (replaced) { Assert.NotEqual(section.Value, result); } else { Assert.Equal(section.Value, result); } } }
public void PerformActionTest() { ApplicationSettings applicationSettings = new ApplicationSettings(); WebSettings webSettings = new WebSettings(); ArachnodeDAO arachnodeDAO = new ArachnodeDAO(applicationSettings.ConnectionString, applicationSettings, webSettings, true, true); Crawler <ArachnodeDAO> crawler = new Crawler <ArachnodeDAO>(applicationSettings, webSettings, CrawlMode.BreadthFirstByPriority, false); CrawlRequest <ArachnodeDAO> crawlRequest = new CrawlRequest <ArachnodeDAO>(new Discovery <ArachnodeDAO>("http://trycatchfail.com/blog/post/2008/11/12/Deep-web-crawling-with-NET-Getting-Started.aspx"), 1, UriClassificationType.Host, UriClassificationType.Host, 1, RenderType.None, RenderType.None); Crawl <ArachnodeDAO> crawl = new Crawl <ArachnodeDAO>(applicationSettings, webSettings, crawler, crawler.ActionManager, crawler.ConsoleManager, crawler.CookieManager, crawler.CrawlRequestManager, crawler.DataTypeManager, crawler.DiscoveryManager, crawler.EncodingManager, crawler.HtmlManager, crawler.PolitenessManager, crawler.ProxyManager, crawler.RuleManager, true); applicationSettings.MaximumNumberOfCrawlThreads = 0; UserDefinedFunctions.ConnectionString = "Data Source=.;Initial Catalog=arachnode.net;Integrated Security=True;Connection Timeout=3600;"; crawler.Engine.Start(); crawl.BeginCrawl(crawlRequest, false, false, false); Templater <ArachnodeDAO> target = new Templater <ArachnodeDAO>(applicationSettings, webSettings); target.PerformAction(crawlRequest, arachnodeDAO); }
public void ToValueWithDoubleFormatText() { Assert.AreEqual("-2010,15-", Templater.ToValue("-[double]-", "double", 2010.15)); Assert.AreEqual("-002010,150-", Templater.ToValue("-[Double:000000.000]-", "Double", 2010.15)); }
public void ToValueWithIntFormatText() { Assert.AreEqual("-2010-", Templater.ToValue("-[Int]-", "int", 2010)); Assert.AreEqual("-002010-", Templater.ToValue("-[Int:000000]-", "Int", 2010)); }
public void ToValueBadBracketsTest() { Assert.AreEqual("-fIeld] ala-", Templater.ToValue("-fIeld] [ fIeld ]-", "fieLd", "ala")); Assert.AreEqual("-[fIeld [ fIeld ]-", Templater.ToValue("-[fIeld [ fIeld ]-", "fieLd", "ala")); }
public void ToValueRecursionTest() { Assert.AreEqual("-[ [ field ] fIeld] ala-", Templater.ToValue("-[ [ field ] fIeld] [ fIeld ]-", "fieLd", "ala")); }
public void ToValueTrimTest() { Assert.AreEqual("-ala ala-", Templater.ToValue("-[ fIeld] [ fIeld ]-", "fieLd", "ala")); Assert.AreEqual("-ala ala-", Templater.ToValue("-[ fIeld] [ fIeld ]-", "fieLd", "ala")); Assert.AreEqual("-ala ala-", Templater.ToValue("-[ fIeld] [ fIeld ]-", "fieLd", "ala")); }
public void ToValueMoreTimesTest() { Assert.AreEqual("ala ala", Templater.ToValue("[fIeld] [fIeld]", "fieLd", "ala")); Assert.AreEqual("-ala ala", Templater.ToValue("-[fIeld] [fIeld]", "fieLd", "ala")); Assert.AreEqual("ala ala-", Templater.ToValue("[fIeld] [fIeld]-", "fieLd", "ala")); }
public void ToValueDifferentPlacesTest() { Assert.AreEqual("ala-", Templater.ToValue("[field]-", "field", "ala")); Assert.AreEqual("-ala", Templater.ToValue("-[Field]", "field", "ala")); Assert.AreEqual("ala", Templater.ToValue("[fIeld]", "fieLd", "ala")); }
public void ToValueLetterCaseTest() { Assert.AreEqual("-ala-", Templater.ToValue("-[field]-", "field", "ala")); Assert.AreEqual("-ala-", Templater.ToValue("-[Field]-", "field", "ala")); Assert.AreEqual("-ala-", Templater.ToValue("-[fIeld]-", "fieLd", "ala")); }
public Program(InstallationManager installationManager, DocumentationManager documentationManager, Templater templater, Context context) { this.documentationManager = documentationManager; this.templater = templater; this.context = context; this.installationManager = installationManager; }