mirror of
https://github.com/GitbookIO/gitbook.git
synced 2026-09-16 15:45:13 +00:00
52 lines
1.7 KiB
JavaScript
52 lines
1.7 KiB
JavaScript
var TemplateEngine = require('../../models/templateEngine');
|
|
var TemplateBlock = require('../../models/templateBlock');
|
|
|
|
var renderTemplate = require('../render');
|
|
var postRender = require('../postRender');
|
|
|
|
describe('postRender', function() {
|
|
var testPost;
|
|
var engine = TemplateEngine.create({
|
|
blocks: [
|
|
TemplateBlock.create('lower', function(blk) {
|
|
return blk.body.toLowerCase();
|
|
}),
|
|
TemplateBlock.create('prefix', function(blk) {
|
|
return {
|
|
body: '_' + blk.body + '_',
|
|
post: function() {
|
|
testPost = true;
|
|
}
|
|
};
|
|
})
|
|
]
|
|
});
|
|
|
|
it('should correctly replace block', function() {
|
|
return renderTemplate(engine, 'README.md', 'Hello {% lower %}Samy{% endlower %}')
|
|
.then(function(output) {
|
|
expect(output.getContent()).toMatch(/Hello \{\{\-([\S]+)\-\}\}/);
|
|
expect(output.getBlocks().size).toBe(1);
|
|
|
|
return postRender(engine, output);
|
|
})
|
|
.then(function(result) {
|
|
expect(result).toBe('Hello samy');
|
|
});
|
|
});
|
|
|
|
it('should correctly replace blocks', function() {
|
|
return renderTemplate(engine, 'README.md', 'Hello {% lower %}Samy{% endlower %}{% prefix %}Pesse{% endprefix %}')
|
|
.then(function(output) {
|
|
expect(output.getContent()).toMatch(/Hello \{\{\-([\S]+)\-\}\}\{\{\-([\S]+)\-\}\}/);
|
|
expect(output.getBlocks().size).toBe(2);
|
|
return postRender(engine, output);
|
|
})
|
|
.then(function(result) {
|
|
expect(result).toBe('Hello samy_Pesse_');
|
|
expect(testPost).toBe(true);
|
|
});
|
|
});
|
|
|
|
});
|