Fix binding to context for plugin blocks

This commit is contained in:
Samy Pessé
2016-02-24 17:20:48 +01:00
parent 52eccb29e4
commit 3a0636046e
2 changed files with 4 additions and 4 deletions
+2 -2
View File
@@ -284,8 +284,8 @@ BookPlugin.prototype.getBlocks = function() {
return _.mapValues(this.content.blocks || {}, function(block, blockName) {
block = _.isFunction(block)? { process: block } : block;
var fn = block.exec;
block.exec = function() {
var fn = block.process;
block.process = function() {
var ctx = _.extend(pluginCtx(that), this);
return fn.apply(ctx, arguments);
+2 -2
View File
@@ -168,11 +168,11 @@ describe('Plugins', function() {
});
it('should correctly normalize block', function() {
blocks.hello.exec({ body: 'World' }).should.equal('Hello World!');
blocks.hello.process({ body: 'World' }).should.equal('Hello World!');
});
it('should correctly set contexts for filter', function() {
blocks.testContext.exec({ body: 'Hello' });
blocks.testContext.process({ body: 'Hello' });
});
});
});