updated node modules
This commit is contained in:
96
nodejs/node_modules/ejs/test/ejs.js
generated
vendored
96
nodejs/node_modules/ejs/test/ejs.js
generated
vendored
@@ -135,6 +135,36 @@ suite('ejs.compile(str, options)', function () {
|
||||
// There could be a `rethrow` in the function declaration
|
||||
assert((fn.toString().match(/rethrow/g) || []).length <= 1);
|
||||
});
|
||||
|
||||
test('support custom escape function', function () {
|
||||
var customEscape
|
||||
, fn;
|
||||
customEscape = function customEscape(str) {
|
||||
return !str ? '' : str.toUpperCase();
|
||||
};
|
||||
fn = ejs.compile('HELLO <%= name %>', {escape: customEscape});
|
||||
assert.equal(fn({name: 'world'}), 'HELLO WORLD');
|
||||
});
|
||||
|
||||
test('support custom escape function in client mode', function () {
|
||||
var customEscape
|
||||
, fn
|
||||
, str;
|
||||
customEscape = function customEscape(str) {
|
||||
return !str ? '' : str.toUpperCase();
|
||||
};
|
||||
fn = ejs.compile('HELLO <%= name %>', {escape: customEscape, client: true});
|
||||
str = fn.toString();
|
||||
if (!process.env.running_under_istanbul) {
|
||||
eval('var preFn = ' + str);
|
||||
assert.equal(preFn({name: 'world'}), 'HELLO WORLD');
|
||||
}
|
||||
});
|
||||
|
||||
test('strict mode works', function () {
|
||||
assert.equal(ejs.render(fixture('strict.ejs'), {}, {strict: true}), 'true');
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
suite('ejs.render(str, data, opts)', function () {
|
||||
@@ -460,6 +490,18 @@ suite('<%=', function () {
|
||||
assert.equal(ejs.render('<%= name %>', {name: '&foo_bar;'}),
|
||||
'&foo_bar;');
|
||||
});
|
||||
|
||||
test('should accept custom function', function() {
|
||||
|
||||
var customEscape = function customEscape(str) {
|
||||
return !str ? '' : str.toUpperCase();
|
||||
};
|
||||
|
||||
assert.equal(
|
||||
ejs.render('<%= name %>', {name: 'The Jones\'s'}, {escape: customEscape}),
|
||||
'THE JONES\'S'
|
||||
);
|
||||
});
|
||||
});
|
||||
|
||||
suite('<%-', function () {
|
||||
@@ -511,6 +553,34 @@ suite('-%>', function () {
|
||||
}
|
||||
throw new Error('Expected ReferenceError');
|
||||
});
|
||||
|
||||
test('works with unix style', function () {
|
||||
var content = "<ul><% -%>\n"
|
||||
+ "<% users.forEach(function(user){ -%>\n"
|
||||
+ "<li><%= user.name -%></li>\n"
|
||||
+ "<% }) -%>\n"
|
||||
+ "</ul><% -%>\n";
|
||||
|
||||
var expectedResult = "<ul><li>geddy</li>\n<li>neil</li>\n<li>alex</li>\n</ul>";
|
||||
var fn;
|
||||
fn = ejs.compile(content);
|
||||
assert.equal(fn({users: users}),
|
||||
expectedResult);
|
||||
});
|
||||
|
||||
test('works with windows style', function () {
|
||||
var content = "<ul><% -%>\r\n"
|
||||
+ "<% users.forEach(function(user){ -%>\r\n"
|
||||
+ "<li><%= user.name -%></li>\r\n"
|
||||
+ "<% }) -%>\r\n"
|
||||
+ "</ul><% -%>\r\n";
|
||||
|
||||
var expectedResult = "<ul><li>geddy</li>\r\n<li>neil</li>\r\n<li>alex</li>\r\n</ul>";
|
||||
var fn;
|
||||
fn = ejs.compile(content);
|
||||
assert.equal(fn({users: users}),
|
||||
expectedResult);
|
||||
});
|
||||
});
|
||||
|
||||
suite('<%%', function () {
|
||||
@@ -525,6 +595,15 @@ suite('<%%', function () {
|
||||
});
|
||||
});
|
||||
|
||||
suite('%%>', function () {
|
||||
test('produce literal', function () {
|
||||
assert.equal(ejs.render('%%>'),
|
||||
'%>');
|
||||
assert.equal(ejs.render(' >', {}, {delimiter: ' '}),
|
||||
' >');
|
||||
});
|
||||
});
|
||||
|
||||
suite('<%_ and _%>', function () {
|
||||
test('slurps spaces and tabs', function () {
|
||||
assert.equal(ejs.render(fixture('space-and-tab-slurp.ejs'), {users: users}),
|
||||
@@ -661,6 +740,14 @@ suite('include()', function () {
|
||||
fixture('include.html'));
|
||||
});
|
||||
|
||||
test('include ejs with set root path', function () {
|
||||
var file = 'test/fixtures/include-root.ejs',
|
||||
viewsPath = path.join(__dirname, 'fixtures');
|
||||
assert.equal(ejs.render(fixture('include-root.ejs'), {pets: users}, {filename: file, delimiter: '@',root:viewsPath}),
|
||||
fixture('include.html'));
|
||||
|
||||
});
|
||||
|
||||
test('work when nested', function () {
|
||||
var file = 'test/fixtures/menu.ejs';
|
||||
assert.equal(ejs.render(fixture('menu.ejs'), {pets: users}, {filename: file}),
|
||||
@@ -818,6 +905,15 @@ suite('preprocessor include', function () {
|
||||
assert.equal(out, expected);
|
||||
});
|
||||
|
||||
test('whitespace slurp and rmWhitespace work', function() {
|
||||
var file = 'test/fixtures/include_preprocessor_line_slurp.ejs'
|
||||
, template = fixture('include_preprocessor_line_slurp.ejs')
|
||||
, expected = fixture('include_preprocessor_line_slurp.html')
|
||||
, options = {rmWhitespace: true, filename: file};
|
||||
assert.equal(ejs.render(template, options),
|
||||
expected);
|
||||
})
|
||||
|
||||
});
|
||||
|
||||
suite('comments', function () {
|
||||
|
1
nodejs/node_modules/ejs/test/fixtures/include-root.ejs
generated
vendored
Normal file
1
nodejs/node_modules/ejs/test/fixtures/include-root.ejs
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
<@- include('/include'); @>
|
1
nodejs/node_modules/ejs/test/fixtures/include_preprocessor_line_slurp.ejs
generated
vendored
Normal file
1
nodejs/node_modules/ejs/test/fixtures/include_preprocessor_line_slurp.ejs
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
<% include include_preprocessor_line_slurp_child %>
|
5
nodejs/node_modules/ejs/test/fixtures/include_preprocessor_line_slurp.html
generated
vendored
Normal file
5
nodejs/node_modules/ejs/test/fixtures/include_preprocessor_line_slurp.html
generated
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
<div>
|
||||
12
|
||||
3
|
||||
45
|
||||
</div>
|
5
nodejs/node_modules/ejs/test/fixtures/include_preprocessor_line_slurp_child.ejs
generated
vendored
Normal file
5
nodejs/node_modules/ejs/test/fixtures/include_preprocessor_line_slurp_child.ejs
generated
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
<div>
|
||||
1 <%_ if (true) { _%> 2
|
||||
3
|
||||
4 <%_ } _%> 5
|
||||
</div>
|
5
nodejs/node_modules/ejs/test/fixtures/strict.ejs
generated
vendored
Normal file
5
nodejs/node_modules/ejs/test/fixtures/strict.ejs
generated
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
<%
|
||||
// Unspecified execution context should be `undefined` in strict mode
|
||||
var isReallyStrict = !((function () { return this; })())
|
||||
-%>
|
||||
<%= isReallyStrict -%>
|
Reference in New Issue
Block a user