Skip to content

Commit ff52db1

Browse files
committed
Add tests for different signatures
1 parent 219d6f5 commit ff52db1

File tree

1 file changed

+85
-0
lines changed

1 file changed

+85
-0
lines changed

test.js

Lines changed: 85 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,91 @@ var u = require('unist-builder')
55
var select = require('unist-util-select')
66
var Index = require('.')
77

8+
var index = Index
9+
10+
test('Index', function(t) {
11+
var node = {type: 'a', id: 1}
12+
var alt = {type: 'b', id: 1}
13+
var tree = {type: 'root', children: [node, alt]}
14+
var instance = index('id')
15+
instance.add(node)
16+
17+
t.deepEqual(
18+
[instance instanceof Index, instance.get(1)],
19+
[true, [node]],
20+
'index(key)'
21+
)
22+
23+
instance = new Index('id')
24+
instance.add(node)
25+
26+
t.deepEqual(
27+
[instance instanceof Index, instance.get(1)],
28+
[true, [node]],
29+
'new Index(key)'
30+
)
31+
32+
instance = index(keyFn)
33+
instance.add(node)
34+
35+
t.deepEqual(
36+
[instance instanceof Index, instance.get(1)],
37+
[true, [node]],
38+
'index(keyFn)'
39+
)
40+
41+
instance = new Index(keyFn)
42+
instance.add(node)
43+
44+
t.deepEqual(
45+
[instance instanceof Index, instance.get(1)],
46+
[true, [node]],
47+
'new Index(keyFn)'
48+
)
49+
50+
instance = index(tree, 'id')
51+
52+
t.deepEqual(
53+
[instance instanceof Index, instance.get(1)],
54+
[true, [node, alt]],
55+
'index(tree, key)'
56+
)
57+
58+
instance = new Index(tree, keyFn)
59+
60+
t.deepEqual(
61+
[instance instanceof Index, instance.get(1)],
62+
[true, [node, alt]],
63+
'new Index(tree, key)'
64+
)
65+
66+
instance = index(tree, filter, 'id')
67+
68+
t.deepEqual(
69+
[instance instanceof Index, instance.get(1)],
70+
[true, [node]],
71+
'index(tree, filter, key)'
72+
)
73+
74+
instance = new Index(tree, filter, keyFn)
75+
76+
t.deepEqual(
77+
[instance instanceof Index, instance.get(1)],
78+
[true, [node]],
79+
'new Index(tree, filter, key)'
80+
)
81+
82+
t.end()
83+
84+
function keyFn(node) {
85+
return node.id
86+
}
87+
88+
function filter(node) {
89+
return node.type === 'a'
90+
}
91+
})
92+
893
test('index.add', function(t) {
994
var ast = u('root', [u('node', {word: 'foo'}), u('node', {word: 'bar'})])
1095
var extraNode = u('node', {word: 'foo'})

0 commit comments

Comments
 (0)