36bfd39954850d14ba7ca3a3f86de2aa5473c94d
[platform/framework/web/crosswalk-tizen.git] /
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 });