-
-
Notifications
You must be signed in to change notification settings - Fork 2k
/
filters.test.js
56 lines (47 loc) · 2.05 KB
/
filters.test.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
/**
* Module dependencies.
*/
var jade = require('jade');
// Shortcut
var render = jade.render;
module.exports = {
'test filter interpolation': function(assert){
assert.equal(
'<script type="text/javascript">\nvar name = "tj";</script>',
render(':javascript\n | var name = "#{userName}";', { locals: { userName: 'tj' }}));
assert.equal(
'<script type="text/javascript">\nvar name = \'tj\';</script>',
render(':javascript\n | var name = #{userName};', { locals: { userName: "'tj'" }}));
assert.equal(
'<script type="text/javascript">\nvar name = "#{userName}";</script>',
render(':javascript\n | var name = "\\#{userName}";', { locals: { userName: 'tj' }}));
},
'test :cdata filter': function(assert){
assert.equal('<![CDATA[\nfoo\n]]>', render(':cdata\n | foo'));
assert.equal('<![CDATA[\nfoo\nbar\n]]>', render(':cdata\n | foo\n | bar'));
assert.equal('<![CDATA[\nfoo\nbar\n]]><p>something else</p>', render(':cdata\n | foo\n | bar\np something else'));
},
'test :javascript filter': function(assert){
assert.equal(
'<script type="text/javascript">\nalert(\'foo\')</script>',
render(':javascript\n | alert(\'foo\')'));
},
'test :markdown filter': function(assert){
assert.equal(
'<h1>foo</h1>\n\n<ul><li>bar</li><li>baz</li></ul>',
render(':markdown\n | #foo\n | - bar\n | - baz'))
},
'test :sass filter': function(assert){
assert.equal(
'<style>body {\n color: #cc0000;}\n</style>',
render(':sass\n | body\n | :color #cc0000'));
assert.equal(
'<style>body {\n font-family: \'Lucida Grande\';}\n</style>',
render(':sass\n | body\n | :font-family \'Lucida Grande\''));
},
'test :less filter': function(assert){
assert.equal(
'<style>.class {\n width: 20px;\n}\n</style>',
render(':less\n | .class { width: 10px * 2 }'));
}
};