Nie możesz wybrać więcej, niż 25 tematów Tematy muszą się zaczynać od litery lub cyfry, mogą zawierać myślniki ('-') i mogą mieć do 35 znaków.

45 wiersze
1.2KB

  1. var assert = require("assert");
  2. var vows = require("vows");
  3. var Mustache = require("./../mustache");
  4. var Writer = Mustache.Writer;
  5. vows.describe("Mustache.Writer").addBatch({
  6. "A Writer": {
  7. topic: function () {
  8. var writer = new Writer();
  9. return writer;
  10. },
  11. "loads partials correctly": function (writer) {
  12. var partial = "The content of the partial.";
  13. var result = writer.render("{{>partial}}", {}, function (name) {
  14. assert.equal(name, "partial");
  15. return partial;
  16. });
  17. assert.equal(result, partial);
  18. },
  19. "caches partials by content, not by name": function (writer) {
  20. var result = writer.render("{{>partial}}", {}, {
  21. partial: "partial one"
  22. });
  23. assert.equal(result, "partial one");
  24. result = writer.render("{{>partial}}", {}, {
  25. partial: "partial two"
  26. });
  27. assert.equal(result, "partial two");
  28. },
  29. "can compile an array of tokens": function (writer) {
  30. var template = "Hello {{name}}!";
  31. var tokens = Mustache.parse(template);
  32. var render = writer.compileTokens(tokens, template);
  33. var result = render({ name: 'Michael' });
  34. assert.equal(result, 'Hello Michael!');
  35. }
  36. }
  37. }).export(module);