UNPKG

docxtemplater

Version:

.docx generator working with templates and data (like Mustache)

43 lines (41 loc) 1.31 kB
"use strict"; var testUtils = require("./utils"); var expect = testUtils.expect; describe("speed test", function () { it("should be fast for simple tags", function () { var content = "<w:t>tag {age}</w:t>"; var time = new Date(); for (var i = 1; i <= 100; i++) { testUtils.createXmlTemplaterDocx(content, { tags: { age: 12 } }).render(); } var duration = new Date() - time; expect(duration).to.be.below(80); }); it("should be fast for simple tags with huge content", function () { var content = "<w:t>tag {age}</w:t>"; var i = void 0; var result = []; for (i = 1; i <= 10000; i++) { result.push("bla"); } var prepost = result.join(""); content = prepost + content + prepost; var time = new Date(); for (i = 1; i <= 50; i++) { testUtils.createXmlTemplaterDocx(content, { tags: { age: 12 } }).render(); } var duration = new Date() - time; expect(duration).to.be.below(100); }); it("should be fast for loop tags", function () { var content = "<w:t>{#users}{name}{/users}</w:t>"; var users = []; for (var i = 1; i <= 1000; i++) { users.push({ name: "foo" }); } var time = new Date(); testUtils.createXmlTemplaterDocx(content, { tags: { users: users } }).render(); var duration = new Date() - time; expect(duration).to.be.below(60); }); });