Issues (791)

test/hbs-helpers.js (1 issue)

1
var chai = require('chai');
2
var Handlebars =require('../src/cli').Handlebars
3
4
describe("Helpers", function () {
5
    describe("className", function () {
6
        it('properly lowercase string', function() {
7
            var value = 'ThiS IS mY String',
8
                rendered = Handlebars.helpers.className(value),
9
                expected = 'ThiS_IS_mY_String';
10
            chai.expect(rendered).to.eql(expected);
11
        });
12
    });
13
    describe("lowercase", function () {
14
        it('properly lowercase string', function() {
15
            var value = 'ThiS IS mY String',
16
                rendered = Handlebars.helpers.lowercase(value),
17
                expected = 'this is my string';
18
            chai.expect(rendered).to.eql(expected);
19
        });
20
        it('properly return empty string', function() {
21
            var value = null,
22
                rendered = Handlebars.helpers.lowercase(value),
23
                expected = '';
24
            chai.expect(rendered).to.eql(expected);
25
        });
26
    });
27
    describe("uppercase", function () {
28
        it('properly uppercase string', function() {
29
            var value = 'ThiS IS mY String',
30
                rendered = Handlebars.helpers.uppercase(value),
31
                expected = 'THIS IS MY STRING';
32
            chai.expect(rendered).to.eql(expected);
33
        });
34
        it('properly return empty string', function() {
35
            var value = null,
36
                rendered = Handlebars.helpers.uppercase(value),
37
                expected = '';
38
            chai.expect(rendered).to.eql(expected);
39
        });
40
    });
41
    describe("truncate", function () {
42
        it('properly truncate string', function() {
43
            var value = 'ThiS IS mY String',
44
                length = 10,
45
                rendered = Handlebars.helpers.truncate(value, length),
46
                expected = 'ThiS IS mY...';
47
            chai.expect(rendered).to.eql(expected);
48
        });
49
        it('properly return full string', function() {
50
            var value = 'ThiS IS mY String',
51
                length = 20,
52
                rendered = Handlebars.helpers.truncate(value, length),
53
                expected = 'ThiS IS mY String';
54
            chai.expect(rendered).to.eql(expected);
55
        });
56
        it('properly return empty string', function() {
57
            var value = null,
58
                length = 10,
59
                rendered = Handlebars.helpers.truncate(value, length),
60
                expected = '';
61
            chai.expect(rendered).to.eql(expected);
62
        });
63
    });
64
    describe("isTrue", function () {
65
        it('properly eval ==', function() {
66
            var value1 = 'str1',
67
                operator = '==',
68
                value2 = 'str1',
69
                rendered = Handlebars.helpers.isTrue(value1, operator, value2),
70
                expected = true;
71
            chai.expect(rendered).to.eql(expected);
72
        });
73
        it('properly eval ==', function() {
74
            var value1 = 'str1',
75
                operator = '==',
76
                value2 = 'str2',
77
                rendered = Handlebars.helpers.isTrue(value1, operator, value2),
78
                expected = false;
79
            chai.expect(rendered).to.eql(expected);
80
        });
81
        it('properly eval ===', function() {
82
            var value1 = '1',
83
                operator = '===',
84
                value2 = 1,
85
                rendered = Handlebars.helpers.isTrue(value1, operator, value2),
86
                expected = false;
87
            chai.expect(rendered).to.eql(expected);
88
        });
89
        it('properly eval <', function() {
90
            var value1 = 1,
91
                operator = '<',
92
                value2 = 10,
93
                rendered = Handlebars.helpers.isTrue(value1, operator, value2),
94
                expected = true;
95
            chai.expect(rendered).to.eql(expected);
96
        });
97
        it('properly eval <=', function() {
98
            var value1 = 10,
99
                operator = '<=',
100
                value2 = 10,
101
                rendered = Handlebars.helpers.isTrue(value1, operator, value2),
102
                expected = true;
103
            chai.expect(rendered).to.eql(expected);
104
        });
105
        it('properly eval &&', function() {
106
            var value1 = null,
107
                operator = '&&',
108
                value2 = 10,
109
                rendered = Handlebars.helpers.isTrue(value1, operator, value2),
110
                expected = false;
111
            chai.expect(rendered).to.eql(expected);
112
        });
113
        it('properly eval &&', function() {
114
            var value1 = [],
115
                operator = '&&',
116
                value2 = 10,
117
                rendered = Handlebars.helpers.isTrue(value1, operator, value2),
118
                expected = false;
119
            chai.expect(rendered).to.eql(expected);
120
        });
121
        it('properly eval &&', function() {
122
            var value1 = {"var":"1"},
123
                operator = '&&',
124
                value2 = {"other":"1"},
125
                rendered = Handlebars.helpers.isTrue(value1, operator, value2),
126
                expected = true;
127
            chai.expect(rendered).to.eql(expected);
128
        });
129
        it('properly eval ||', function() {
130
            var value1 = null,
131
                operator = '||',
132
                value2 = 10,
133
                rendered = Handlebars.helpers.isTrue(value1, operator, value2),
134
                expected = true;
135
            chai.expect(rendered).to.eql(expected);
136
        });
137
        it('properly eval ||', function() {
138
            var value1 = [],
139
                operator = '||',
140
                value2 = null,
141
                rendered = Handlebars.helpers.isTrue(value1, operator, value2),
142
                expected = false;
143
            chai.expect(rendered).to.eql(expected);
144
        });
145
        it('properly eval ||', function() {
146
            var value1 = false,
147
                operator = '||',
148
                value2 = 4,
149
                rendered = Handlebars.helpers.isTrue(value1, operator, value2),
150
                expected = true;
151
            chai.expect(rendered).to.eql(expected);
152
        });
153
    });
154
    describe("setVariable", function () {
155
        it('setVariable', function() {
156
            var variableName = "variableName",
157
                variableValue = 'variableValue',
158
                obj = {data: {root: {}}},
159
                rendered = Handlebars.helpers.setVariable(variableName, variableValue, obj);
0 ignored issues
show
The variable rendered seems to be never used. Consider removing it.
Loading history...
160
            chai.expect(obj.data.root.variableName).to.be.equal(variableValue);
161
        });
162
    });
163
});