xtemplate
Version:
eXtensible Template Engine lib on browser and nodejs. support async control, inheritance, include, logic expression, custom function and more.
94 lines (93 loc) • 3.5 kB
HTML
<html>
<head>
<meta charset='utf-8'>
<title>xtemplate tests</title>
<link rel='stylesheet' href='/node_modules/mocha/mocha.css'/>
</head>
<body>
<h1 style="text-align: center">xtemplate tests</h1>
<div id='mocha'></div>
<script src="/bower_components/modulex/build/modulex-debug.js"></script>
<script src="/node_modules/node-jscover/lib/front-end/header.js"></script>
<script src="/node_modules/node-jscover/lib/front-end/jscoverage-branch.js"></script>
<script src='/node_modules/expect.js/index.js'></script>
<script src='/node_modules/mocha/mocha.js'></script>
<script src='/node_modules/node-jscover/lib/reporters/mocha/console.js'></script>
<script src='/node_modules/node-jscover-coveralls/lib/reports/mocha.js'></script>
<script>
mocha.setup('bdd');
var isStandalone = location.href.indexOf('standalone') !== -1;
var isBuild = location.href.indexOf('build') !== -1;
var isCoverage = location.search.indexOf('coverage') !== -1;
if (location.href.indexOf('__testling') !== -1) {
mocha.reporter('tap');
}
if (isStandalone) {
document.write('<script src="/build/xtemplate-standalone-debug.js"><' + '/' + 'script>');
}
</script>
<script>
(function () {
modulex.config({
packages: {
specs: {
base: '/tests/browser/specs'
}
}
});
if (isStandalone) {
modulex.add('xtemplate', function () {
return window.XTemplate;
});
XTemplate.loader = {
cache: {},
load: function (params, callback) {
var name = params.name;
var cache = this.cache;
if (cache[name]) {
return callback(undefined, cache[name]);
}
modulex.use([name], {
success: function (tpl) {
if (typeof tpl === 'string') {
try {
tpl = XTemplate.compile(tpl, name);
} catch (e) {
return callback(e);
}
}
cache[name] = tpl;
callback(undefined, tpl);
},
error: function () {
var error = 'template "' + name + '" does not exist';
util.log(error, 'error');
callback(error);
}
});
}
};
} else {
modulex.config({
packages: {
xtemplate: {
filter: isCoverage ? 'coverage' : isBuild ? 'debug' : '',
base: isBuild ? '/build/xtemplate' : '/lib/xtemplate'
}
}
});
}
modulex.use(['specs/'], function () {
if (window.mochaPhantomJS) {
var runner = mochaPhantomJS.run();
if (isCoverage) {
window.nodeJsCoverCoveralls(runner);
}
} else {
mocha.run();
}
});
})();
</script>
</body>
</html>