Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
Download
80575 views
1
var test = require('tape');
2
var balanced = require('..');
3
4
test('balanced', function(t) {
5
t.deepEqual(balanced('{', '}', 'pre{in{nest}}post'), {
6
start: 3,
7
end: 12,
8
pre: 'pre',
9
body: 'in{nest}',
10
post: 'post'
11
});
12
t.deepEqual(balanced('{', '}', '{{{{{{{{{in}post'), {
13
start: 8,
14
end: 11,
15
pre: '{{{{{{{{',
16
body: 'in',
17
post: 'post'
18
});
19
t.deepEqual(balanced('{', '}', 'pre{body{in}post'), {
20
start: 8,
21
end: 11,
22
pre: 'pre{body',
23
body: 'in',
24
post: 'post'
25
});
26
t.deepEqual(balanced('{', '}', 'pre}{in{nest}}post'), {
27
start: 4,
28
end: 13,
29
pre: 'pre}',
30
body: 'in{nest}',
31
post: 'post'
32
});
33
t.deepEqual(balanced('{', '}', 'pre{body}between{body2}post'), {
34
start: 3,
35
end: 8,
36
pre: 'pre',
37
body: 'body',
38
post: 'between{body2}post'
39
});
40
t.notOk(balanced('{', '}', 'nope'), 'should be notOk');
41
t.deepEqual(balanced('<b>', '</b>', 'pre<b>in<b>nest</b></b>post'), {
42
start: 3,
43
end: 19,
44
pre: 'pre',
45
body: 'in<b>nest</b>',
46
post: 'post'
47
});
48
t.deepEqual(balanced('<b>', '</b>', 'pre</b><b>in<b>nest</b></b>post'), {
49
start: 7,
50
end: 23,
51
pre: 'pre</b>',
52
body: 'in<b>nest</b>',
53
post: 'post'
54
});
55
t.end();
56
});
57
58