GCC Code Coverage Report


Directory: src/
File: src/btree/conversion.c
Date: 2023-03-02 23:19:03
Exec Total Coverage
Lines: 85 85 100.0%
Functions: 7 7 100.0%
Branches: 41 196 20.9%

Line Branch Exec Source
1 #include <core.h>
2 #include <interface.h>
3
4
5 napi_value
6 2 esToMap(napi_env env, napi_callback_info cbInfo) {
7 napi_value esThis, map, global, constructor;
8 2 size_t argc = 0;
9
10 // Get es this for current btree
11
1/6
✓ Branch 0 taken 2 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
2 NAPI_CALL(env, false, napi_get_cb_info(env, cbInfo, &argc, NULL, &esThis, NULL));
12
13
1/6
✓ Branch 0 taken 2 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
2 NAPI_CALL(env, true,
14 napi_get_global(env, &global));
15
16
1/6
✓ Branch 0 taken 2 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
2 NAPI_CALL(env, true,
17 napi_get_named_property(env, global, "Map", &constructor));
18
19
1/6
✓ Branch 0 taken 2 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
2 NAPI_CALL(env, true,
20 napi_new_instance(env, constructor, 1, &esThis, &map));
21
22 2 return map;
23 2 }
24
25 napi_value
26 2 esToSet(napi_env env, napi_callback_info cbInfo) {
27 napi_value esThis, set, global, constructor, valuesFn, iterator;
28 2 size_t argc = 0;
29
30 // Get es this for current btree
31
1/6
✓ Branch 0 taken 2 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
2 NAPI_CALL(env, false, napi_get_cb_info(env, cbInfo, &argc, NULL, &esThis, NULL));
32
33
1/6
✓ Branch 0 taken 2 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
2 NAPI_CALL(env, true,
34 napi_get_global(env, &global));
35
36
1/6
✓ Branch 0 taken 2 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
2 NAPI_CALL(env, true,
37 napi_get_named_property(env, global, "Set", &constructor));
38
39
1/6
✓ Branch 0 taken 2 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
2 NAPI_CALL(env, true,
40 napi_get_named_property(env, esThis, "values", &valuesFn));
41
42
1/6
✓ Branch 0 taken 2 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
2 NAPI_CALL(env, true,
43 napi_call_function(env, esThis, valuesFn, 0, NULL, &iterator));
44
45
1/6
✓ Branch 0 taken 2 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
2 NAPI_CALL(env, true,
46 napi_new_instance(env, constructor, 1, &iterator, &set));
47
48 2 return set;
49 2 }
50
51 napi_value
52 4 esToArrays(napi_env env, napi_callback_info cbInfo) {
53 napi_value esThis, result;
54 4 size_t argc = 0;
55
56
1/6
✓ Branch 0 taken 4 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
4 NAPI_CALL(env, false, napi_get_cb_info(env, cbInfo, &argc, NULL, &esThis, NULL));
57
58 BTree_t *btree;
59
1/6
✓ Branch 0 taken 4 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
4 EXTRACT_BTREE(env, esThis, btree);
60
61 4 GTreeNode *current = g_tree_node_first(btree->nativeTree);
62
63 4 size_t arrSize = g_tree_nnodes(btree->nativeTree);
64
65
1/6
✓ Branch 0 taken 4 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
4 NAPI_CALL(env, false,
66 napi_create_array_with_length(env, arrSize, &result));
67
68 napi_value item;
69 4 size_t idx = 0;
70
2/2
✓ Branch 0 taken 15 times.
✓ Branch 1 taken 4 times.
19 while (current) {
71 15 item = getNodeEsFieldPair(env, current);
72
1/6
✓ Branch 0 taken 15 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
15 NAPI_CALL(env, false,
73 napi_set_element(env, result, idx++, item));
74 15 current = g_tree_node_next(current);
75 }
76
77 4 return result;
78 }
79
80 napi_value
81 5 esToArray(napi_env env, napi_callback_info cbInfo) {
82 napi_value esThis, result;
83 5 size_t argc = 0;
84
85
1/6
✓ Branch 0 taken 5 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
5 NAPI_CALL(env, false, napi_get_cb_info(env, cbInfo, &argc, NULL, &esThis, NULL));
86
87 BTree_t *btree;
88
1/6
✓ Branch 0 taken 5 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
5 EXTRACT_BTREE(env, esThis, btree);
89
90 5 GTreeNode *current = g_tree_node_first(btree->nativeTree);
91
92 5 size_t arrSize = g_tree_nnodes(btree->nativeTree);
93
94
1/6
✓ Branch 0 taken 5 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
5 NAPI_CALL(env, false,
95 napi_create_array_with_length(env, arrSize, &result));
96
97 napi_value item;
98 5 size_t idx = 0;
99
2/2
✓ Branch 0 taken 15 times.
✓ Branch 1 taken 5 times.
20 while (current) {
100 15 item = getNodeEsObject(env, current);
101
1/6
✓ Branch 0 taken 15 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
15 NAPI_CALL(env, false,
102 napi_set_element(env, result, idx++, item));
103 15 current = g_tree_node_next(current);
104 }
105
106 5 return result;
107 }
108
109 napi_value
110 3 esFlatten(napi_env env, napi_callback_info cbInfo) {
111 napi_value esThis, result;
112 3 size_t argc = 0;
113
114
1/6
✓ Branch 0 taken 3 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
3 NAPI_CALL(env, false, napi_get_cb_info(env, cbInfo, &argc, NULL, &esThis, NULL));
115
116 BTree_t *btree;
117
1/6
✓ Branch 0 taken 3 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
3 EXTRACT_BTREE(env, esThis, btree);
118
119 3 GTreeNode *current = g_tree_node_first(btree->nativeTree);
120
121 3 size_t arrSize = g_tree_nnodes(btree->nativeTree);
122
123
1/6
✓ Branch 0 taken 3 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
3 NAPI_CALL(env, false,
124 napi_create_array_with_length(env, arrSize, &result));
125
126 napi_value item;
127 3 size_t idx = 0;
128
2/2
✓ Branch 0 taken 15 times.
✓ Branch 1 taken 3 times.
18 while (current) {
129 15 item = getNodeEsKey(env, current);
130
1/6
✓ Branch 0 taken 15 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
15 NAPI_CALL(env, false,
131 napi_set_element(env, result, idx++, item));
132
133 15 item = getNodeEsValue(env, current);
134
1/6
✓ Branch 0 taken 15 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
15 NAPI_CALL(env, false,
135 napi_set_element(env, result, idx++, item));
136
137 15 current = g_tree_node_next(current);
138 }
139
140 3 return result;
141 }
142
143 napi_value
144 4 esKeys(napi_env env, napi_callback_info cbInfo) {
145 napi_value esThis, result;
146 4 size_t argc = 0;
147
148
1/6
✓ Branch 0 taken 4 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
4 NAPI_CALL(env, false, napi_get_cb_info(env, cbInfo, &argc, NULL, &esThis, NULL));
149
150 BTree_t *btree;
151
1/6
✓ Branch 0 taken 4 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
4 EXTRACT_BTREE(env, esThis, btree);
152
153 4 GTreeNode *current = g_tree_node_first(btree->nativeTree);
154
155 4 size_t arrSize = g_tree_nnodes(btree->nativeTree);
156
157
1/6
✓ Branch 0 taken 4 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
4 NAPI_CALL(env, false,
158 napi_create_array_with_length(env, arrSize, &result));
159
160 napi_value item;
161 4 size_t idx = 0;
162
2/2
✓ Branch 0 taken 9 times.
✓ Branch 1 taken 4 times.
13 while (current) {
163 9 item = getNodeEsKey(env, current);
164
1/6
✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
9 NAPI_CALL(env, false,
165 napi_set_element(env, result, idx++, item));
166
167 9 current = g_tree_node_next(current);
168 }
169
170 4 return result;
171 }
172
173 napi_value
174 4 esValues(napi_env env, napi_callback_info cbInfo) {
175 napi_value esThis, result;
176 4 size_t argc = 0;
177
178
1/6
✓ Branch 0 taken 4 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
4 NAPI_CALL(env, false, napi_get_cb_info(env, cbInfo, &argc, NULL, &esThis, NULL));
179
180 BTree_t *btree;
181
1/6
✓ Branch 0 taken 4 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
4 EXTRACT_BTREE(env, esThis, btree);
182
183 4 GTreeNode *current = g_tree_node_first(btree->nativeTree);
184
185 4 size_t arrSize = g_tree_nnodes(btree->nativeTree);
186
187
1/6
✓ Branch 0 taken 4 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
4 NAPI_CALL(env, false,
188 napi_create_array_with_length(env, arrSize, &result));
189
190 napi_value item;
191 4 size_t idx = 0;
192
2/2
✓ Branch 0 taken 9 times.
✓ Branch 1 taken 4 times.
13 while (current) {
193 9 item = getNodeEsValue(env, current);
194
1/6
✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
9 NAPI_CALL(env, false,
195 napi_set_element(env, result, idx++, item));
196
197 9 current = g_tree_node_next(current);
198 }
199
200 4 return result;
201 }
202