TemplateTest.cs 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. using Masuit.Tools.Strings;
  2. using Microsoft.VisualStudio.TestTools.UnitTesting;
  3. using System;
  4. using Assert = Microsoft.VisualStudio.TestTools.UnitTesting.Assert;
  5. namespace Masuit.Tools.Test
  6. {
  7. [TestClass]
  8. public class TemplateTest
  9. {
  10. [TestMethod]
  11. public void Render_Template()
  12. {
  13. var tmp = new Template("{{name}},你好!");
  14. tmp.Set("name", "万金油");
  15. string s = tmp.Render();
  16. Assert.AreEqual("万金油,你好!", s);
  17. }
  18. [TestMethod]
  19. public void Render_TemplateWithMultiVariables()
  20. {
  21. var tmp = new Template("{{one}},{{two}},{{three}}");
  22. string s = tmp.Set("one", "1").Set("two", "2").Set("three", "3").Render();
  23. Assert.AreEqual("1,2,3", s);
  24. }
  25. [TestMethod]
  26. public void Render_TemplateWithUncoverVariable()
  27. {
  28. var tmp = new Template("{{name}},{{greet}}!");
  29. tmp.Set("name", "万金油");
  30. try
  31. {
  32. string s = tmp.Render();
  33. }
  34. catch (Exception e)
  35. {
  36. Assert.IsInstanceOfType(e, typeof(ArgumentException));
  37. Assert.AreEqual("模版变量{{greet}}未被使用", e.Message);
  38. }
  39. }
  40. }
  41. }