Skip to content

Commit ca236d3

Browse files
committed
Add tests for 'getDiffText' method
1 parent 6f637d2 commit ca236d3

1 file changed

Lines changed: 134 additions & 0 deletions

File tree

test/getDiffText.js

Lines changed: 134 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,134 @@
1+
var diffLoger = require('../lib/diff-logger');
2+
3+
require('colors');
4+
5+
describe('\'diffHtml\'', function () {
6+
7+
it('must return an empty string', function () {
8+
9+
var inp = [ {
10+
value: 'text',
11+
added: undefined,
12+
removed: undefined
13+
} ];
14+
15+
diffLoger.getDiffText(inp).must.be.equal('');
16+
});
17+
18+
it('must return a diff string', function () {
19+
20+
var inp = [ {
21+
value: 'texttexttexttexttexttexttexttexttexttexttext',
22+
added: undefined,
23+
removed: undefined
24+
}, {
25+
value: '!',
26+
added: true,
27+
removed: undefined
28+
}, {
29+
value: 'Text',
30+
added: undefined,
31+
removed: undefined
32+
}, {
33+
value: '!',
34+
added: true,
35+
removed: undefined
36+
}, {
37+
value: 'texttexttexttext',
38+
added: undefined,
39+
removed: undefined
40+
} ],
41+
42+
out = '\n...\n' + 'texttexttexttexttext'.grey + '!'.green + 'Text'.grey + '!'.green + 'texttexttexttext'.grey;
43+
44+
diffLoger.getDiffText(inp).must.be.eql(out);
45+
});
46+
47+
it('must consider negative value of \'charsAroundDiff\' option', function () {
48+
var inp = [ {
49+
value: 'text',
50+
added: undefined,
51+
removed: undefined
52+
} ];
53+
54+
diffLoger.getDiffText(inp, { charsAroundDiff: -5 } ).must.be.equal('');
55+
});
56+
57+
58+
59+
it('must return a diff when there is nothing else in the input', function () {
60+
61+
var inp = [ {
62+
value: 'texttexttexttexttexttexttexttexttexttexttext',
63+
added: true,
64+
removed: undefined
65+
}, {
66+
value: 'ololoololoololoololoololoololoololoololoolol',
67+
added: false,
68+
removed: true
69+
} ],
70+
71+
out = '\n' + 'texttexttexttexttexttexttexttexttexttexttext'.green + 'ololoololoololoololoololoololoololoololoolol'.red;
72+
73+
diffLoger.getDiffText(inp).must.be.eql(out);
74+
});
75+
76+
it('must return a diff on the beginning of the input', function () {
77+
78+
var inp = [ {
79+
value: 'texttexttext',
80+
added: undefined,
81+
removed: undefined
82+
}, {
83+
value: 'text',
84+
added: undefined,
85+
removed: true
86+
}, {
87+
value: 'texttexttexttext',
88+
added: undefined,
89+
removed: undefined
90+
} ],
91+
92+
out = '\n' + 'texttexttext'.grey + 'text'.red + 'texttexttexttext'.grey;
93+
94+
diffLoger.getDiffText(inp).must.be.eql(out);
95+
});
96+
97+
it('must return several diffs', function () {
98+
99+
var inp = [ {
100+
value: 'texttexttexttexttexttexttexttexttexttexttext',
101+
added: undefined,
102+
removed: undefined
103+
}, {
104+
value: 'text',
105+
added: undefined,
106+
removed: true
107+
}, {
108+
value: 'texttexttexttexttexttexttexttexttexttexttext',
109+
added: undefined,
110+
removed: undefined
111+
}, {
112+
value: '!',
113+
added: true,
114+
removed: false
115+
}, {
116+
value: 'text',
117+
added: undefined,
118+
removed: undefined
119+
}, {
120+
value: '!',
121+
added: true,
122+
removed: false
123+
}, {
124+
value: 'texttexttexttexttext',
125+
added: undefined,
126+
removed: undefined
127+
} ],
128+
129+
out = '\n...\n' + 'texttexttexttexttext'.grey + 'text'.red + 'texttexttexttexttext'.grey + '\n...\n' + 'texttexttexttexttext'.grey + '!'.green + 'text'.grey + '!'.green + 'texttexttexttexttext'.grey;
130+
131+
diffLoger.getDiffText(inp).must.be.eql(out);
132+
});
133+
134+
});

0 commit comments

Comments
 (0)