Skip to content

Instantly share code, notes, and snippets.

@mwawrusch
Created November 17, 2011 22:08
Show Gist options
  • Save mwawrusch/1374702 to your computer and use it in GitHub Desktop.
Save mwawrusch/1374702 to your computer and use it in GitHub Desktop.
var common = exports,
assert = require('assert'),
fs = require('fs'),
Plates = require('../../lib/plates');
function get(name, extension) {
try {
return fs.readFileSync(__dirname + '/../templates/' +
name + '.' + extension).toString();
} catch(e) {
return null;
}
};
common.render = function(name, data, map) {
var html = get(name, 'html');
return Plates.bind(html,data,map);
/*
node.js:134
throw e; // process.nextTick error, or 'error' event on first tick
^
TypeError: Object #<Object> has no method 'bind'
at Object.render (/Users/mwawrusch/Documents/npm-packages/plates/test/fixtures/common.js:19:17)
at Object.<anonymous> (/Users/mwawrusch/Documents/npm-packages/plates/test/fixtures/common.js:30:24)
at run (/Users/mwawrusch/Documents/npm-packages/plates/node_modules/vows/lib/vows/suite.js:128:31)
at EventEmitter.<anonymous> (/Users/mwawrusch/Documents/npm-packages/plates/node_modules/vows/lib/vows/suite.js:201:40)
at EventEmitter.emit (events.js:81:20)
at Array.<anonymous> (/Users/mwawrusch/Documents/npm-packages/plates/node_modules/vows/lib/vows/suite.js:150:58)
at EventEmitter._tickCallback (node.js:126:26)
*/
};
common.createTest = function(name, map) {
return {
topic: function() {
this.out = get(name, 'out');
this.data = JSON.parse(get(name, 'json') || "{}");
return {
render: common.render(name, this.data, map)
};
},
'should merge data to markup': function(result) {
assert.equal(result.render, this.out);
}
};
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment