@nxtedition/rocksdb 10.0.20 → 10.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. package/.tap/test-results/node_modules/abstract-level/test/get-test.js.tap +0 -0
  2. package/.tap/test-results/test/abstract-level-test.js.tap +1077 -0
  3. package/.tap/test-results/test/batch-test.js.tap +12 -0
  4. package/.tap/test-results/test/chained-batch-gc-test.js.tap +11 -0
  5. package/.tap/test-results/test/cleanup-hanging-iterators-test.js.tap +135 -0
  6. package/.tap/test-results/test/clear-gc-test.js.tap +13 -0
  7. package/.tap/test-results/test/column-test.js.tap +55 -0
  8. package/.tap/test-results/test/common.js.tap +0 -0
  9. package/.tap/test-results/test/compression-test.js.tap +30 -0
  10. package/.tap/test-results/test/db-identity.js.tap +12 -0
  11. package/.tap/test-results/test/electron.js.tap +0 -0
  12. package/.tap/test-results/test/env-cleanup-hook-test.js.tap +40 -0
  13. package/.tap/test-results/test/env-cleanup-hook.js.tap +0 -0
  14. package/.tap/test-results/test/gc.js.tap +0 -0
  15. package/.tap/test-results/test/getproperty-test.js.tap +29 -0
  16. package/.tap/test-results/test/iterator-gc-test.js.tap +15 -0
  17. package/.tap/test-results/test/iterator-hwm-test.js.tap +131 -0
  18. package/.tap/test-results/test/iterator-recursion-test.js.tap +12 -0
  19. package/.tap/test-results/test/iterator-starvation-test.js.tap +73 -0
  20. package/.tap/test-results/test/iterator-test.js.tap +6 -0
  21. package/.tap/test-results/test/leak-tester-batch.js.tap +0 -0
  22. package/.tap/test-results/test/leak-tester-iterator.js.tap +0 -0
  23. package/.tap/test-results/test/leak-tester.js.tap +0 -0
  24. package/.tap/test-results/test/lock-test.js.tap +18 -0
  25. package/.tap/test-results/test/lock.js.tap +0 -0
  26. package/.tap/test-results/test/make.js.tap +0 -0
  27. package/.tap/test-results/test/max-rev-merge.js.tap +0 -0
  28. package/.tap/test-results/test/merge-operator-test.js.tap +12 -0
  29. package/.tap/test-results/test/mkdir-test.js.tap +15 -0
  30. package/.tap/test-results/test/segfault-test.js.tap +76 -0
  31. package/.tap/test-results/test/stack-blower.js.tap +0 -0
  32. package/benchmarks/rocks-vs-map.mjs +68 -0
  33. package/binding.cc +21 -34
  34. package/deps/rocksdb/rocksdb/README.md +29 -0
  35. package/deps/rocksdb/rocksdb/microbench/README.md +60 -0
  36. package/deps/rocksdb/rocksdb/plugin/README.md +43 -0
  37. package/deps/rocksdb/rocksdb/port/README +10 -0
  38. package/deps/rocksdb/rocksdb/utilities/transactions/lock/range/range_tree/lib/README +13 -0
  39. package/package.json +3 -1
  40. package/prebuilds/darwin-arm64/@nxtedition+rocksdb.node +0 -0
  41. package/prebuilds/linux-x64/@nxtedition+rocksdb.node +0 -0
  42. package/tmp/000099.sst +0 -0
  43. package/tmp/000102.sst +0 -0
  44. package/tmp/000103.log +0 -0
  45. package/tmp/CURRENT +1 -0
  46. package/tmp/IDENTITY +1 -0
  47. package/tmp/LOCK +0 -0
  48. package/tmp/MANIFEST-000104 +0 -0
  49. package/tmp/OPTIONS-000098 +207 -0
  50. package/tmp/OPTIONS-000106 +207 -0
@@ -0,0 +1,1077 @@
1
+ TAP version 13
2
+ # testCommon.factory() returns valid database
3
+ ok 1 is an object
4
+ ok 2 is not null
5
+ ok 3 has open() method
6
+ ok 4 has on() method
7
+ ok 5 has emit() method
8
+ ok 6 got event
9
+ # testCommon.factory() returns a unique database
10
+ ok 7 unique instances
11
+ ok 8 no error while opening db1
12
+ ok 9 no error while opening db2
13
+ ok 10 put key in db1
14
+ ok 11 db2 should be empty
15
+ ok 12 db2 should be empty
16
+ ok 13 no error while closing db1
17
+ ok 14 no error while closing db2
18
+ # db has manifest
19
+ ok 15 manifest is object
20
+ ok 16 additionalMethods is object
21
+ ok 17 truthy: encodings
22
+ ok 18 truthy: seek
23
+ ok 19 truthy: additionalMethods
24
+ ok 20 truthy: status
25
+ ok 21 truthy: promises
26
+ ok 22 truthy: clear
27
+ ok 23 truthy: getMany
28
+ ok 24 truthy: deferredOpen
29
+ ok 25 truthy: snapshots
30
+ ok 26 truthy: permanence
31
+ ok 27 truthy: keyIterator
32
+ ok 28 truthy: valueIterator
33
+ ok 29 truthy: iteratorNextv
34
+ ok 30 truthy: iteratorAll
35
+ ok 31 truthy: events
36
+ ok 32 false: createIfMissing
37
+ ok 33 false: errorIfExists
38
+ ok 34 false: streams
39
+ ok 35 manifest has unique identity
40
+ ok 36 manifest.encodings has unique identity
41
+ ok 37 manifest.additionalMethods has unique identity
42
+ ok 38 manifest.events has unique identity
43
+ ok 39 no open error
44
+ ok 40 manifest did not change after open
45
+ ok 41 no close error
46
+ ok 42 manifest did not change after close
47
+ # manifest has expected properties
48
+ ok 43 should be strictly equal
49
+ ok 44 should be strictly equal
50
+ ok 45 should be strictly equal
51
+ ok 46 should be strictly equal
52
+ ok 47 can be accessed via testCommon
53
+ ok 48 supports utf8
54
+ ok 49 supports json
55
+ # test database open, no options
56
+ ok 50 should be strictly equal
57
+ ok 51 should be strictly equal
58
+ ok 52 undefined
59
+ ok 53 should be strictly equal
60
+ ok 54 should be strictly equal
61
+ # test database open, no options, with promise
62
+ ok 55 should be strictly equal
63
+ ok 56 should be strictly equal
64
+ ok 57 should be strictly equal
65
+ # test database open, options and callback
66
+ ok 58 undefined
67
+ # test database open, options with promise
68
+ # test database open, close and open
69
+ ok 59 undefined
70
+ ok 60 undefined
71
+ ok 61 should be strictly equal
72
+ ok 62 undefined
73
+ ok 63 should be strictly equal
74
+ # test database open, close and open with promise
75
+ ok 64 undefined
76
+ # test database open and close in same tick
77
+ ok 65 is opening
78
+ ok 66 is still opening
79
+ ok 67 callback (anonymous) is asynchronous
80
+ ok 68 callback (anonymous) is asynchronous
81
+ ok 69 callback (anonymous) is asynchronous
82
+ ok 70 got open() error
83
+ ok 71 is closed
84
+ ok 72 order is correct
85
+ ok 73 no close() error
86
+ ok 74 is closed
87
+ # test database open, close and open in same tick
88
+ ok 75 is opening
89
+ ok 76 is still opening
90
+ ok 77 is still opening
91
+ ok 78 callback (anonymous) is asynchronous
92
+ ok 79 callback (anonymous) is asynchronous
93
+ ok 80 callback (anonymous) is asynchronous
94
+ ok 81 callback (anonymous) is asynchronous
95
+ ok 82 no open() error (1)
96
+ ok 83 is open
97
+ ok 84 should be strictly equal
98
+ ok 85 is open
99
+ ok 86 callback order is the same as call order
100
+ ok 87 no open() error (2)
101
+ ok 88 is open
102
+ # test database open if already open (sequential)
103
+ ok 89 callback (anonymous) is asynchronous
104
+ ok 90 no open() error (1)
105
+ ok 91 is open
106
+ ok 92 not reopening
107
+ ok 93 callback (anonymous) is asynchronous
108
+ ok 94 no open() error (2)
109
+ ok 95 is open
110
+ # test database open if already opening (parallel)
111
+ ok 96 should be strictly equal
112
+ ok 97 callback (anonymous) is asynchronous
113
+ ok 98 callback (anonymous) is asynchronous
114
+ ok 99 no open() error (1)
115
+ ok 100 should be strictly equal
116
+ ok 101 no open() error (2)
117
+ ok 102 should be strictly equal
118
+ # test database close if already closed
119
+ ok 103 no open() error
120
+ ok 104 callback (anonymous) is asynchronous
121
+ ok 105 no close() error (1)
122
+ ok 106 is closed
123
+ ok 107 is closed
124
+ ok 108 callback (anonymous) is asynchronous
125
+ ok 109 no close() error (2)
126
+ ok 110 is closed
127
+ # test database close if new
128
+ ok 111 status ok
129
+ ok 112 status unchanged
130
+ ok 113 callback (anonymous) is asynchronous
131
+ ok 114 no close() error
132
+ ok 115 status ok
133
+ # test database close on open event
134
+ ok 116 got open() error
135
+ ok 117 is closed
136
+ ok 118 order is correct
137
+ ok 119 no close() error
138
+ ok 120 is closed
139
+ # test passive open()
140
+ ok 121 should be strictly equal
141
+ # test passive open(): ignored if set in constructor options
142
+ # test close()
143
+ ok 122 no open() error
144
+ ok 123 undefined
145
+ # test close() with promise
146
+ ok 124 no open() error
147
+ # setUp db
148
+ # test put() with illegal keys
149
+ ok 125 callback (anonymous) is asynchronous
150
+ ok 126 callback (anonymous) is asynchronous
151
+ ok 127 null key - is Error (callback)
152
+ ok 128 null key - correct error code (callback)
153
+ ok 129 undefined key - is Error (callback)
154
+ ok 130 undefined key - correct error code (callback)
155
+ ok 131 null key - is Error (promise)
156
+ ok 132 null key - correct error code (promise)
157
+ ok 133 undefined key - is Error (promise)
158
+ ok 134 undefined key - correct error code (promise)
159
+ # test put() with illegal values
160
+ ok 135 callback (anonymous) is asynchronous
161
+ ok 136 callback (anonymous) is asynchronous
162
+ ok 137 null key- is Error (callback)
163
+ ok 138 null key - correct error code (callback)
164
+ ok 139 undefined value- is Error (callback)
165
+ ok 140 undefined value - correct error code (callback)
166
+ ok 141 null key - is Error (promise)
167
+ ok 142 null key - correct error code (promise)
168
+ ok 143 undefined value - is Error (promise)
169
+ ok 144 undefined value - correct error code (promise)
170
+ # test simple put()
171
+ ok 145 callback (anonymous) is asynchronous
172
+ ok 146 no put() error
173
+ ok 147 no get() error
174
+ ok 148 should be strictly equal
175
+ ok 149 no put() error
176
+ ok 150 no get() error
177
+ ok 151 value was overwritten
178
+ # test simple put() with promise
179
+ ok 152 should be strictly equal
180
+ # test deferred put()
181
+ ok 153 callback (anonymous) is asynchronous
182
+ ok 154 no put() error
183
+ ok 155 no get() error
184
+ ok 156 value is ok
185
+ ok 157 undefined
186
+ # test deferred put() with promise
187
+ ok 158 value is ok
188
+ # test put() emits put event
189
+ ok 159 should be truthy
190
+ ok 160 should be strictly equal
191
+ ok 161 should be strictly equal
192
+ # tearDown
193
+ # setUp db
194
+ # test get() with illegal keys
195
+ ok 162 callback (anonymous) is asynchronous
196
+ ok 163 callback (anonymous) is asynchronous
197
+ ok 164 null key - is Error (callback)
198
+ ok 165 null key - correct error code (callback)
199
+ ok 166 undefined key - is Error (callback)
200
+ ok 167 undefined key - correct error code (callback)
201
+ ok 168 null key - is Error (promise)
202
+ ok 169 null key - correct error code (promise)
203
+ ok 170 undefined key - is Error (promise)
204
+ ok 171 undefined key - correct error code (promise)
205
+ # test simple get()
206
+ ok 172 undefined
207
+ ok 173 null
208
+ ok 174 should be strictly equal
209
+ ok 175 null
210
+ ok 176 should be strictly equal
211
+ ok 177 null
212
+ ok 178 should be strictly equal
213
+ ok 179 null
214
+ ok 180 should be buffer
215
+ ok 181 should be strictly equal
216
+ # test get() with promise
217
+ ok 182 undefined
218
+ ok 183 got value without options
219
+ ok 184 should error
220
+ ok 185 correct error
221
+ ok 186 is buffer
222
+ ok 187 correct value
223
+ # test simultaneous get()
224
+ ok 188 undefined
225
+ ok 189 null
226
+ ok 190 should be strictly equal
227
+ ok 191 null
228
+ ok 192 should be strictly equal
229
+ ok 193 null
230
+ ok 194 should be strictly equal
231
+ ok 195 null
232
+ ok 196 should be strictly equal
233
+ ok 197 null
234
+ ok 198 should be strictly equal
235
+ ok 199 null
236
+ ok 200 should be strictly equal
237
+ ok 201 null
238
+ ok 202 should be strictly equal
239
+ ok 203 null
240
+ ok 204 should be strictly equal
241
+ ok 205 null
242
+ ok 206 should be strictly equal
243
+ ok 207 null
244
+ ok 208 should be strictly equal
245
+ ok 209 should error
246
+ ok 210 correct error
247
+ ok 211 value is undefined
248
+ ok 212 should error
249
+ ok 213 correct error
250
+ ok 214 value is undefined
251
+ ok 215 should error
252
+ ok 216 correct error
253
+ ok 217 value is undefined
254
+ ok 218 should error
255
+ ok 219 correct error
256
+ ok 220 value is undefined
257
+ ok 221 should error
258
+ ok 222 correct error
259
+ ok 223 value is undefined
260
+ ok 224 should error
261
+ ok 225 correct error
262
+ ok 226 value is undefined
263
+ ok 227 should error
264
+ ok 228 correct error
265
+ ok 229 value is undefined
266
+ ok 230 should error
267
+ ok 231 correct error
268
+ ok 232 value is undefined
269
+ ok 233 should error
270
+ ok 234 correct error
271
+ ok 235 value is undefined
272
+ ok 236 should error
273
+ ok 237 correct error
274
+ ok 238 value is undefined
275
+ # test get() not found error is asynchronous
276
+ ok 239 should error
277
+ ok 240 correct error
278
+ ok 241 value is undefined
279
+ ok 242 callback is asynchronous
280
+ # tearDown
281
+ # setUp db
282
+ # test del() with illegal keys
283
+ ok 243 callback (anonymous) is asynchronous
284
+ ok 244 callback (anonymous) is asynchronous
285
+ ok 245 null key - is Error (callback)
286
+ ok 246 null key - correct error code (callback)
287
+ ok 247 undefined key - is Error (callback)
288
+ ok 248 undefined key - correct error code (callback)
289
+ ok 249 null key - is Error (promise)
290
+ ok 250 null key - correct error code (callback)
291
+ ok 251 undefined key - is Error (promise)
292
+ ok 252 undefined key - correct error code (callback)
293
+ # test simple del()
294
+ ok 253 undefined
295
+ ok 254 undefined
296
+ ok 255 entry properly deleted
297
+ ok 256 value is undefined
298
+ ok 257 NotFound error
299
+ # test simple del() with promise
300
+ ok 258 undefined
301
+ ok 259 undefined
302
+ ok 260 entry properly deleted
303
+ ok 261 value is undefined
304
+ ok 262 NotFound error
305
+ # test del on non-existent key
306
+ ok 263 undefined
307
+ # test del on non-existent key, with promise
308
+ # test del() emits del event
309
+ ok 264 should be truthy
310
+ ok 265 should be strictly equal
311
+ # tearDown
312
+ # setUp db
313
+ # test put()/get()/del() with `0` key
314
+ ok 266 undefined
315
+ ok 267 no error, has key/value for ``0` key`
316
+ ok 268 should be strictly equal
317
+ ok 269 no error, deleted key/value for ``0` key`
318
+ ok 270 entry properly deleted
319
+ ok 271 correct error
320
+ ok 272 value is undefined
321
+ ok 273 callback is asynchronous
322
+ # test put()/get()/del() with empty string key
323
+ ok 274 undefined
324
+ ok 275 no error, has key/value for `empty string key`
325
+ ok 276 should be strictly equal
326
+ ok 277 no error, deleted key/value for `empty string key`
327
+ ok 278 entry properly deleted
328
+ ok 279 correct error
329
+ ok 280 value is undefined
330
+ ok 281 callback is asynchronous
331
+ # test put()/get()/del() with long String key
332
+ ok 282 undefined
333
+ ok 283 no error, has key/value for `long String key`
334
+ ok 284 should be strictly equal
335
+ ok 285 no error, deleted key/value for `long String key`
336
+ ok 286 entry properly deleted
337
+ ok 287 correct error
338
+ ok 288 value is undefined
339
+ ok 289 callback is asynchronous
340
+ # test put()/get()/del() with Buffer key
341
+ ok 290 undefined
342
+ ok 291 no error, has key/value for `Buffer key`
343
+ ok 292 should be strictly equal
344
+ ok 293 no error, deleted key/value for `Buffer key`
345
+ ok 294 entry properly deleted
346
+ ok 295 correct error
347
+ ok 296 value is undefined
348
+ ok 297 callback is asynchronous
349
+ # test put()/get()/del() with empty Buffer key
350
+ ok 298 undefined
351
+ ok 299 no error, has key/value for `empty Buffer key`
352
+ ok 300 should be strictly equal
353
+ ok 301 no error, deleted key/value for `empty Buffer key`
354
+ ok 302 entry properly deleted
355
+ ok 303 correct error
356
+ ok 304 value is undefined
357
+ ok 305 callback is asynchronous
358
+ # test put()/get()/del() with Array value
359
+ ok 306 undefined
360
+ ok 307 no error, has key/value for `Array value`
361
+ ok 308 should be strictly equal
362
+ ok 309 no error, deleted key/value for `Array value`
363
+ ok 310 entry properly deleted
364
+ ok 311 correct error
365
+ ok 312 value is undefined
366
+ ok 313 callback is asynchronous
367
+ # test put()/get()/del() with `false` value
368
+ ok 314 undefined
369
+ ok 315 no error, has key/value for ``false` value`
370
+ ok 316 should be strictly equal
371
+ ok 317 no error, deleted key/value for ``false` value`
372
+ ok 318 entry properly deleted
373
+ ok 319 correct error
374
+ ok 320 value is undefined
375
+ ok 321 callback is asynchronous
376
+ # test put()/get()/del() with `0` value
377
+ ok 322 undefined
378
+ ok 323 no error, has key/value for ``0` value`
379
+ ok 324 should be strictly equal
380
+ ok 325 no error, deleted key/value for ``0` value`
381
+ ok 326 entry properly deleted
382
+ ok 327 correct error
383
+ ok 328 value is undefined
384
+ ok 329 callback is asynchronous
385
+ # test put()/get()/del() with `NaN` value
386
+ ok 330 undefined
387
+ ok 331 no error, has key/value for ``NaN` value`
388
+ ok 332 should be strictly equal
389
+ ok 333 no error, deleted key/value for ``NaN` value`
390
+ ok 334 entry properly deleted
391
+ ok 335 correct error
392
+ ok 336 value is undefined
393
+ ok 337 callback is asynchronous
394
+ # test put()/get()/del() with empty String value
395
+ ok 338 undefined
396
+ ok 339 no error, has key/value for `empty String value`
397
+ ok 340 should be strictly equal
398
+ ok 341 no error, deleted key/value for `empty String value`
399
+ ok 342 entry properly deleted
400
+ ok 343 correct error
401
+ ok 344 value is undefined
402
+ ok 345 callback is asynchronous
403
+ # test put()/get()/del() with empty Buffer value
404
+ ok 346 undefined
405
+ ok 347 no error, has key/value for `empty Buffer value`
406
+ ok 348 should be strictly equal
407
+ ok 349 no error, deleted key/value for `empty Buffer value`
408
+ ok 350 entry properly deleted
409
+ ok 351 correct error
410
+ ok 352 value is undefined
411
+ ok 353 callback is asynchronous
412
+ # test put()/get()/del() with empty Array value
413
+ ok 354 undefined
414
+ ok 355 no error, has key/value for `empty Array value`
415
+ ok 356 should be strictly equal
416
+ ok 357 no error, deleted key/value for `empty Array value`
417
+ ok 358 entry properly deleted
418
+ ok 359 correct error
419
+ ok 360 value is undefined
420
+ ok 361 callback is asynchronous
421
+ # test put()/get()/del() with long String value
422
+ ok 362 undefined
423
+ ok 363 no error, has key/value for `long String value`
424
+ ok 364 should be strictly equal
425
+ ok 365 no error, deleted key/value for `long String value`
426
+ ok 366 entry properly deleted
427
+ ok 367 correct error
428
+ ok 368 value is undefined
429
+ ok 369 callback is asynchronous
430
+ # test put()/get()/del() with Buffer value
431
+ ok 370 undefined
432
+ ok 371 no error, has key/value for `Buffer value`
433
+ ok 372 should be strictly equal
434
+ ok 373 no error, deleted key/value for `Buffer value`
435
+ ok 374 entry properly deleted
436
+ ok 375 correct error
437
+ ok 376 value is undefined
438
+ ok 377 callback is asynchronous
439
+ # test put()/get()/del() with Array key
440
+ ok 378 undefined
441
+ ok 379 no error, has key/value for `Array key`
442
+ ok 380 should be strictly equal
443
+ ok 381 no error, deleted key/value for `Array key`
444
+ ok 382 entry properly deleted
445
+ ok 383 correct error
446
+ ok 384 value is undefined
447
+ ok 385 callback is asynchronous
448
+ # tearDown
449
+ # setUp db
450
+ # test getMany() requires an array argument (callback)
451
+ ok 386 callback (anonymous) is asynchronous
452
+ ok 387 callback (anonymous) is asynchronous
453
+ ok 388 should be strictly equal
454
+ ok 389 should be strictly equal
455
+ ok 390 should be strictly equal
456
+ ok 391 should be strictly equal
457
+ # test getMany() requires an array argument (promise)
458
+ ok 392 should be strictly equal
459
+ ok 393 should be strictly equal
460
+ ok 394 should be strictly equal
461
+ ok 395 should be strictly equal
462
+ ok 396 should be strictly equal
463
+ ok 397 should be strictly equal
464
+ # test getMany() with illegal keys
465
+ ok 398 callback (anonymous) is asynchronous
466
+ ok 399 callback (anonymous) is asynchronous
467
+ ok 400 callback (anonymous) is asynchronous
468
+ ok 401 callback (anonymous) is asynchronous
469
+ ok 402 null key - is Error (callback)
470
+ ok 403 null key - correct error code (callback)
471
+ ok 404 null key - is Error (callback, second key)
472
+ ok 405 null key - correct error code (callback, second key)
473
+ ok 406 undefined key - is Error (callback)
474
+ ok 407 undefined key - correct error code (callback)
475
+ ok 408 undefined key - is Error (callback, second key)
476
+ ok 409 undefined key - correct error code (callback, second key)
477
+ ok 410 null key - is Error (promise)
478
+ ok 411 null key - correct error code (promise)
479
+ ok 412 null key - is Error (promise, second key)
480
+ ok 413 null key - correct error code (promise, second key)
481
+ ok 414 undefined key - is Error (promise)
482
+ ok 415 undefined key - correct error code (promise)
483
+ ok 416 undefined key - is Error (promise, second key)
484
+ ok 417 undefined key - correct error code (promise, second key)
485
+ # test simple getMany()
486
+ ok 418 undefined
487
+ ok 419 null
488
+ ok 420 got an array
489
+ ok 421 array has 1 element
490
+ ok 422 should be strictly equal
491
+ ok 423 null
492
+ ok 424 got an array
493
+ ok 425 array has 1 element
494
+ ok 426 should be strictly equal
495
+ ok 427 null
496
+ ok 428 should be string if not buffer
497
+ ok 429 should be deeply equivalent
498
+ # test getMany() with multiple keys
499
+ ok 430 undefined
500
+ ok 431 null
501
+ ok 432 should be deeply equivalent
502
+ ok 433 null
503
+ ok 434 maintains order of input keys
504
+ # test empty getMany()
505
+ ok 435 callback (anonymous) is asynchronous
506
+ ok 436 callback (anonymous) is asynchronous
507
+ ok 437 callback (anonymous) is asynchronous
508
+ ok 438 callback (anonymous) is asynchronous
509
+ ok 439 callback (anonymous) is asynchronous
510
+ ok 440 callback (anonymous) is asynchronous
511
+ ok 441 null
512
+ ok 442 should be deeply equivalent
513
+ ok 443 null
514
+ ok 444 should be deeply equivalent
515
+ ok 445 null
516
+ ok 446 should be deeply equivalent
517
+ ok 447 null
518
+ ok 448 should be deeply equivalent
519
+ ok 449 null
520
+ ok 450 should be deeply equivalent
521
+ ok 451 null
522
+ ok 452 should be deeply equivalent
523
+ # test not-found getMany()
524
+ ok 453 callback (anonymous) is asynchronous
525
+ ok 454 callback (anonymous) is asynchronous
526
+ ok 455 callback (anonymous) is asynchronous
527
+ ok 456 callback (anonymous) is asynchronous
528
+ ok 457 callback (anonymous) is asynchronous
529
+ ok 458 callback (anonymous) is asynchronous
530
+ ok 459 null
531
+ ok 460 should be deeply equivalent
532
+ ok 461 null
533
+ ok 462 should be deeply equivalent
534
+ ok 463 null
535
+ ok 464 should be deeply equivalent
536
+ ok 465 null
537
+ ok 466 should be deeply equivalent
538
+ ok 467 null
539
+ ok 468 should be deeply equivalent
540
+ ok 469 null
541
+ ok 470 should be deeply equivalent
542
+ # test getMany() with promise
543
+ ok 471 should be deeply equivalent
544
+ ok 472 should be deeply equivalent
545
+ ok 473 should be deeply equivalent
546
+ ok 474 should be deeply equivalent
547
+ ok 475 should be deeply equivalent
548
+ ok 476 should be deeply equivalent
549
+ # test simultaneous getMany()
550
+ ok 477 undefined
551
+ ok 478 null
552
+ ok 479 should be strictly equal
553
+ ok 480 should be strictly equal
554
+ ok 481 null
555
+ ok 482 should be strictly equal
556
+ ok 483 should be strictly equal
557
+ ok 484 null
558
+ ok 485 should be strictly equal
559
+ ok 486 should be strictly equal
560
+ ok 487 null
561
+ ok 488 should be strictly equal
562
+ ok 489 should be strictly equal
563
+ ok 490 null
564
+ ok 491 should be strictly equal
565
+ ok 492 should be strictly equal
566
+ ok 493 null
567
+ ok 494 should be strictly equal
568
+ ok 495 should be strictly equal
569
+ ok 496 null
570
+ ok 497 should be strictly equal
571
+ ok 498 should be strictly equal
572
+ ok 499 null
573
+ ok 500 should be strictly equal
574
+ ok 501 should be strictly equal
575
+ ok 502 null
576
+ ok 503 should be strictly equal
577
+ ok 504 should be strictly equal
578
+ ok 505 null
579
+ ok 506 should be strictly equal
580
+ ok 507 should be strictly equal
581
+ ok 508 null
582
+ ok 509 should be deeply equivalent
583
+ ok 510 null
584
+ ok 511 should be deeply equivalent
585
+ ok 512 null
586
+ ok 513 should be deeply equivalent
587
+ ok 514 null
588
+ ok 515 should be deeply equivalent
589
+ ok 516 null
590
+ ok 517 should be deeply equivalent
591
+ ok 518 null
592
+ ok 519 should be deeply equivalent
593
+ ok 520 null
594
+ ok 521 should be deeply equivalent
595
+ ok 522 null
596
+ ok 523 should be deeply equivalent
597
+ ok 524 null
598
+ ok 525 should be deeply equivalent
599
+ ok 526 null
600
+ ok 527 should be deeply equivalent
601
+ # test getMany() on opening db
602
+ ok 528 should be strictly equal
603
+ ok 529 should be strictly equal
604
+ ok 530 (unnamed assert)
605
+ ok 531 should be strictly equal
606
+ ok 532 should be strictly equal
607
+ ok 533 (unnamed assert)
608
+ ok 534 callback (anonymous) is asynchronous
609
+ ok 535 callback (anonymous) is asynchronous
610
+ ok 536 callback (anonymous) is asynchronous
611
+ ok 537 callback (anonymous) is asynchronous
612
+ ok 538 undefined
613
+ ok 539 no error
614
+ ok 540 should be deeply equivalent
615
+ ok 541 undefined
616
+ ok 542 no error
617
+ ok 543 should be deeply equivalent
618
+ ok 544 no error
619
+ ok 545 should be deeply equivalent
620
+ ok 546 no error
621
+ ok 547 should be deeply equivalent
622
+ # test getMany() on closed db
623
+ ok 548 undefined
624
+ ok 549 undefined
625
+ ok 550 undefined
626
+ ok 551 callback (anonymous) is asynchronous
627
+ ok 552 should be strictly equal
628
+ ok 553 undefined
629
+ ok 554 callback (anonymous) is asynchronous
630
+ ok 555 should be strictly equal
631
+ # test getMany() on closing db
632
+ ok 556 undefined
633
+ ok 557 callback (anonymous) is asynchronous
634
+ ok 558 should be strictly equal
635
+ ok 559 undefined
636
+ ok 560 callback (anonymous) is asynchronous
637
+ ok 561 should be strictly equal
638
+ ok 562 undefined
639
+ ok 563 undefined
640
+ # tearDown
641
+ # setUp db
642
+ # test batch() with missing `value`
643
+ ok 564 callback (anonymous) is asynchronous
644
+ ok 565 correct error code (callback)
645
+ ok 566 correct error code (promise)
646
+ # test batch() with illegal values
647
+ ok 567 callback (anonymous) is asynchronous
648
+ ok 568 callback (anonymous) is asynchronous
649
+ ok 569 null key - has error (callback)
650
+ ok 570 null key - is Error (callback)
651
+ ok 571 correct error code (callback)
652
+ ok 572 undefined value - has error (callback)
653
+ ok 573 undefined value - is Error (callback)
654
+ ok 574 correct error code (callback)
655
+ ok 575 null key - is Error (promise)
656
+ ok 576 null key - correct error code (promise)
657
+ ok 577 undefined value - is Error (promise)
658
+ ok 578 undefined value - correct error code (promise)
659
+ # test batch() with missing `key`
660
+ ok 579 callback (anonymous) is asynchronous
661
+ ok 580 correct error code (callback)
662
+ ok 581 correct error code (promise)
663
+ # test batch() with illegal keys
664
+ ok 582 callback (anonymous) is asynchronous
665
+ ok 583 callback (anonymous) is asynchronous
666
+ ok 584 null key - has error (callback)
667
+ ok 585 null key - is Error (callback)
668
+ ok 586 correct error code (callback)
669
+ ok 587 undefined key - has error (callback)
670
+ ok 588 undefined key - is Error (callback)
671
+ ok 589 correct error code (callback)
672
+ ok 590 null key - is Error (promise)
673
+ ok 591 null key - correct error code (promise)
674
+ ok 592 undefined key - is Error (promise)
675
+ ok 593 undefined key - correct error code (promise)
676
+ # test batch() with missing or incorrect type
677
+ ok 594 callback (anonymous) is asynchronous
678
+ ok 595 callback (anonymous) is asynchronous
679
+ ok 596 should be strictly equal
680
+ ok 597 correct error message (callback)
681
+ ok 598 should be strictly equal
682
+ ok 599 correct error message (callback)
683
+ ok 600 should be strictly equal
684
+ ok 601 correct error message (promise)
685
+ ok 602 should be strictly equal
686
+ ok 603 correct error message (promise)
687
+ # test batch() with missing or nullish operations
688
+ ok 604 callback (anonymous) is asynchronous
689
+ ok 605 callback (anonymous) is asynchronous
690
+ ok 606 callback (anonymous) is asynchronous
691
+ ok 607 should be strictly equal
692
+ ok 608 correct error message (callback)
693
+ ok 609 should be strictly equal
694
+ ok 610 correct error message (callback)
695
+ ok 611 should be strictly equal
696
+ ok 612 correct error message (callback)
697
+ ok 613 should be strictly equal
698
+ ok 614 correct error message (promise)
699
+ ok 615 should be strictly equal
700
+ ok 616 correct error message (promise)
701
+ # test batch() with null options
702
+ ok 617 undefined
703
+ ok 618 resolved
704
+ # test batch() with null operation
705
+ ok 619 callback (anonymous) is asynchronous
706
+ ok 620 should be strictly equal
707
+ ok 621 correct error message (callback)
708
+ ok 622 should be strictly equal
709
+ ok 623 correct error message (promise)
710
+ # test batch() with undefined operation
711
+ ok 624 callback (anonymous) is asynchronous
712
+ ok 625 should be strictly equal
713
+ ok 626 correct error message (callback)
714
+ ok 627 should be strictly equal
715
+ ok 628 correct error message (promise)
716
+ # test batch() with number operation
717
+ ok 629 callback (anonymous) is asynchronous
718
+ ok 630 should be strictly equal
719
+ ok 631 correct error message (callback)
720
+ ok 632 should be strictly equal
721
+ ok 633 correct error message (promise)
722
+ # test batch() with boolean operation
723
+ ok 634 callback (anonymous) is asynchronous
724
+ ok 635 should be strictly equal
725
+ ok 636 correct error message (callback)
726
+ ok 637 should be strictly equal
727
+ ok 638 correct error message (promise)
728
+ # test batch() with empty array
729
+ ok 639 callback (anonymous) is asynchronous
730
+ ok 640 no error from batch()
731
+ ok 641 resolved
732
+ # test simple batch()
733
+ ok 642 undefined
734
+ ok 643 null
735
+ ok 644 should be strictly equal
736
+ # test simple batch() with promise
737
+ ok 645 should be strictly equal
738
+ # test multiple batch()
739
+ ok 646 undefined
740
+ ok 647 null
741
+ ok 648 should be strictly equal
742
+ ok 649 entry not found
743
+ ok 650 value is undefined
744
+ ok 651 NotFound error
745
+ ok 652 null
746
+ ok 653 should be strictly equal
747
+ # empty values in batch with utf8 valueEncoding
748
+ ok 654 should be deeply equivalent
749
+ ok 655 should be deeply equivalent
750
+ ok 656 should be deeply equivalent
751
+ # empty keys in batch with utf8 keyEncoding
752
+ ok 657 got value 0
753
+ ok 658 got value 1
754
+ ok 659 got value 2
755
+ # empty values in batch with buffer valueEncoding
756
+ ok 660 should be deeply equivalent
757
+ ok 661 should be deeply equivalent
758
+ ok 662 should be deeply equivalent
759
+ # empty keys in batch with buffer keyEncoding
760
+ ok 663 got value 0
761
+ ok 664 got value 1
762
+ ok 665 got value 2
763
+ # empty values in batch with view valueEncoding
764
+ ok 666 should be deeply equivalent
765
+ ok 667 should be deeply equivalent
766
+ ok 668 should be deeply equivalent
767
+ # empty keys in batch with view keyEncoding
768
+ ok 669 got value 0
769
+ ok 670 got value 1
770
+ ok 671 got value 2
771
+ # test batch() is atomic
772
+ ok 672 should error
773
+ ok 673 callback is asynchronous
774
+ ok 674 should not be found
775
+ ok 675 should not be found
776
+ # test batch([]) (array-form) emits batch event
777
+ ok 676 should be truthy
778
+ ok 677 should be deeply equivalent
779
+ # tearDown
780
+ # setUp db
781
+ # test batch has db reference
782
+ ok 678 should be truthy
783
+ # test batch#put() with missing, null or undefined `value`
784
+ ok 679 correct error code
785
+ ok 680 length is not incremented on error
786
+ ok 681 correct error code
787
+ ok 682 length is not incremented on error
788
+ ok 683 correct error code
789
+ ok 684 length is not incremented on error
790
+ # test batch#put() with missing, null or undefined `key`
791
+ ok 685 correct error code
792
+ ok 686 length is not incremented on error
793
+ ok 687 correct error code
794
+ ok 688 length is not incremented on error
795
+ ok 689 correct error code
796
+ ok 690 length is not incremented on error
797
+ # test batch#del() with missing, null or undefined `key`
798
+ ok 691 correct error code
799
+ ok 692 length is not incremented on error
800
+ ok 693 correct error code
801
+ ok 694 length is not incremented on error
802
+ ok 695 correct error code
803
+ ok 696 length is not incremented on error
804
+ # test batch#clear() doesn't throw
805
+ # test batch#put() after write()
806
+ ok 697 correct error code
807
+ # test batch#del() after write()
808
+ ok 698 correct error code
809
+ # test batch#clear() after write()
810
+ ok 699 correct error code
811
+ # test batch#write() after write()
812
+ ok 700 correct error code
813
+ # test batch#write() with no operations
814
+ ok 701 no error from write()
815
+ ok 702 callback is asynchronous
816
+ # test batch#write() with promise and no operations
817
+ # test twice batch#close() is idempotent
818
+ ok 703 callback is asynchronous
819
+ # test basic batch
820
+ ok 704 undefined
821
+ ok 705 length was incremented
822
+ ok 706 length is reset
823
+ ok 707 length was incremented
824
+ ok 708 no write() error
825
+ ok 709 null
826
+ ok 710 should be deeply equivalent
827
+ # test basic batch with promise
828
+ ok 711 undefined
829
+ ok 712 null
830
+ ok 713 should be deeply equivalent
831
+ # chained batch with per-operation encoding options
832
+ ok 714 should be deeply equivalent
833
+ ok 715 should be deeply equivalent
834
+ # test chained batch() emits batch event
835
+ ok 716 should be truthy
836
+ ok 717 should be deeply equivalent
837
+ # test close() on chained batch event
838
+ # tearDown
839
+ # setUp db
840
+ # iterator() has db reference
841
+ ok 718 should be truthy
842
+ # iterator() has limit and count properties
843
+ ok 719 defaults to infinite
844
+ ok 720 has limit property
845
+ ok 721 has limit property
846
+ ok 722 has limit property
847
+ ok 723 has limit property
848
+ ok 724 has count property
849
+ # iterator().nextv() yields error if size is invalid
850
+ ok 725 should be strictly equal
851
+ ok 726 should be strictly equal
852
+ ok 727 should be strictly equal
853
+ ok 728 should be strictly equal
854
+ # keys() has db reference
855
+ ok 729 should be truthy
856
+ # keys() has limit and count properties
857
+ ok 730 defaults to infinite
858
+ ok 731 has limit property
859
+ ok 732 has limit property
860
+ ok 733 has limit property
861
+ ok 734 has limit property
862
+ ok 735 has count property
863
+ # keys().nextv() yields error if size is invalid
864
+ ok 736 should be strictly equal
865
+ ok 737 should be strictly equal
866
+ ok 738 should be strictly equal
867
+ ok 739 should be strictly equal
868
+ # values() has db reference
869
+ not ok 740 TypeError: The second argument must be an options object
870
+ ---
871
+ operator: error
872
+ stack: |-
873
+ TypeError: The second argument must be an options object
874
+ at new CommonIterator (/Users/robertnagy/GitHub/rocks-level/node_modules/abstract-level/abstract-iterator.js:42:13)
875
+ at new AbstractIterator (/Users/robertnagy/GitHub/rocks-level/node_modules/abstract-level/abstract-iterator.js:336:5)
876
+ at new Iterator (/Users/robertnagy/GitHub/rocks-level/iterator.js:139:5)
877
+ at new ValueIterator (/Users/robertnagy/GitHub/rocks-level/iterator.js:184:22)
878
+ at RocksLevel._values (/Users/robertnagy/GitHub/rocks-level/index.js:262:12)
879
+ at RocksLevel.values (/Users/robertnagy/GitHub/rocks-level/node_modules/abstract-level/abstract-level.js:731:17)
880
+ at Test.<anonymous> (/Users/robertnagy/GitHub/rocks-level/node_modules/abstract-level/test/iterator-test.js:18:26)
881
+ at Test.run (/Users/robertnagy/GitHub/rocks-level/node_modules/tape/lib/test.js:127:28)
882
+ at Immediate.next (/Users/robertnagy/GitHub/rocks-level/node_modules/tape/lib/results.js:156:7)
883
+ at process.processImmediate (node:internal/timers:478:21)
884
+ ...
885
+ # values() has limit and count properties
886
+ not ok 741 TypeError: The second argument must be an options object
887
+ ---
888
+ operator: error
889
+ stack: |-
890
+ TypeError: The second argument must be an options object
891
+ at new CommonIterator (/Users/robertnagy/GitHub/rocks-level/node_modules/abstract-level/abstract-iterator.js:42:13)
892
+ at new AbstractIterator (/Users/robertnagy/GitHub/rocks-level/node_modules/abstract-level/abstract-iterator.js:336:5)
893
+ at new Iterator (/Users/robertnagy/GitHub/rocks-level/iterator.js:139:5)
894
+ at new ValueIterator (/Users/robertnagy/GitHub/rocks-level/iterator.js:184:22)
895
+ at RocksLevel._values (/Users/robertnagy/GitHub/rocks-level/index.js:262:12)
896
+ at RocksLevel.values (/Users/robertnagy/GitHub/rocks-level/node_modules/abstract-level/abstract-level.js:731:17)
897
+ at Test.<anonymous> (/Users/robertnagy/GitHub/rocks-level/node_modules/abstract-level/test/iterator-test.js:27:34)
898
+ at Test.run (/Users/robertnagy/GitHub/rocks-level/node_modules/tape/lib/test.js:127:28)
899
+ at Immediate.next (/Users/robertnagy/GitHub/rocks-level/node_modules/tape/lib/results.js:156:7)
900
+ at process.processImmediate (node:internal/timers:478:21)
901
+ ...
902
+ # values().nextv() yields error if size is invalid
903
+ not ok 742 TypeError: The second argument must be an options object
904
+ ---
905
+ operator: error
906
+ stack: |-
907
+ TypeError: The second argument must be an options object
908
+ at new CommonIterator (/Users/robertnagy/GitHub/rocks-level/node_modules/abstract-level/abstract-iterator.js:42:13)
909
+ at new AbstractIterator (/Users/robertnagy/GitHub/rocks-level/node_modules/abstract-level/abstract-iterator.js:336:5)
910
+ at new Iterator (/Users/robertnagy/GitHub/rocks-level/iterator.js:139:5)
911
+ at new ValueIterator (/Users/robertnagy/GitHub/rocks-level/iterator.js:184:22)
912
+ at RocksLevel._values (/Users/robertnagy/GitHub/rocks-level/index.js:262:12)
913
+ at RocksLevel.values (/Users/robertnagy/GitHub/rocks-level/node_modules/abstract-level/abstract-level.js:731:17)
914
+ at Test.<anonymous> (/Users/robertnagy/GitHub/rocks-level/node_modules/abstract-level/test/iterator-test.js:43:26)
915
+ at Test.run (/Users/robertnagy/GitHub/rocks-level/node_modules/tape/lib/test.js:127:28)
916
+ at Immediate.next (/Users/robertnagy/GitHub/rocks-level/node_modules/tape/lib/results.js:156:7)
917
+ at process.processImmediate (node:internal/timers:478:21)
918
+ ...
919
+ not ok 743 plan != count
920
+ ---
921
+ operator: fail
922
+ expected: 4
923
+ actual: 1
924
+ stack: |-
925
+ Error: plan != count
926
+ at Test.assert [as _assert] (/Users/robertnagy/GitHub/rocks-level/node_modules/tape/lib/test.js:493:48)
927
+ at Test.fail (/Users/robertnagy/GitHub/rocks-level/node_modules/tape/lib/test.js:601:7)
928
+ at completeEnd (/Users/robertnagy/GitHub/rocks-level/node_modules/tape/lib/test.js:408:9)
929
+ at next (/Users/robertnagy/GitHub/rocks-level/node_modules/tape/lib/test.js:418:4)
930
+ at Test._end (/Users/robertnagy/GitHub/rocks-level/node_modules/tape/lib/test.js:438:2)
931
+ at Test.end (/Users/robertnagy/GitHub/rocks-level/node_modules/tape/lib/test.js:212:7)
932
+ at onError (/Users/robertnagy/GitHub/rocks-level/node_modules/tape/lib/test.js:147:10)
933
+ at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
934
+ ...
935
+ # iterator().close() is idempotent
936
+ ok 744 callback is asynchronous
937
+ # iterator().next() after close() yields error
938
+ ok 745 undefined
939
+ ok 746 returned error
940
+ ok 747 correct message
941
+ ok 748 callback is asynchronous
942
+ # iterator().next() while busy with next() yields error
943
+ ok 749 null
944
+ ok 750 returned error
945
+ ok 751 should be strictly equal
946
+ ok 752 callback is asynchronous
947
+ ok 753 undefined
948
+ # iterator().next() while busy with nextv() yields error
949
+ ok 754 returned error
950
+ ok 755 should be strictly equal
951
+ ok 756 callback is asynchronous
952
+ ok 757 null
953
+ ok 758 undefined
954
+ # iterator().next() while busy with all() yields error
955
+ ok 759 returned error
956
+ ok 760 should be strictly equal
957
+ ok 761 callback is asynchronous
958
+ ok 762 null
959
+ ok 763 undefined
960
+ # iterator().nextv() after close() yields error
961
+ ok 764 undefined
962
+ ok 765 returned error
963
+ ok 766 correct message
964
+ ok 767 callback is asynchronous
965
+ # iterator().nextv() while busy with next() yields error
966
+ ok 768 null
967
+ ok 769 returned error
968
+ ok 770 should be strictly equal
969
+ ok 771 callback is asynchronous
970
+ ok 772 undefined
971
+ # iterator().nextv() while busy with nextv() yields error
972
+ ok 773 returned error
973
+ ok 774 should be strictly equal
974
+ ok 775 callback is asynchronous
975
+ ok 776 null
976
+ ok 777 undefined
977
+ # iterator().nextv() while busy with all() yields error
978
+ ok 778 returned error
979
+ ok 779 should be strictly equal
980
+ ok 780 callback is asynchronous
981
+ ok 781 null
982
+ ok 782 undefined
983
+ # iterator().all() after close() yields error
984
+ ok 783 undefined
985
+ ok 784 returned error
986
+ ok 785 correct message
987
+ ok 786 callback is asynchronous
988
+ # iterator().all() while busy with next() yields error
989
+ ok 787 null
990
+ ok 788 returned error
991
+ ok 789 should be strictly equal
992
+ ok 790 callback is asynchronous
993
+ ok 791 undefined
994
+ # iterator().all() while busy with nextv() yields error
995
+ ok 792 returned error
996
+ ok 793 should be strictly equal
997
+ ok 794 callback is asynchronous
998
+ ok 795 null
999
+ ok 796 undefined
1000
+ # iterator().all() while busy with all() yields error
1001
+ ok 797 returned error
1002
+ ok 798 should be strictly equal
1003
+ ok 799 callback is asynchronous
1004
+ ok 800 null
1005
+ ok 801 undefined
1006
+ # keys().close() is idempotent
1007
+ ok 802 callback is asynchronous
1008
+ # keys().next() after close() yields error
1009
+ ok 803 undefined
1010
+ ok 804 returned error
1011
+ ok 805 correct message
1012
+ ok 806 callback is asynchronous
1013
+ # keys().next() while busy with next() yields error
1014
+ ok 807 null
1015
+ ok 808 returned error
1016
+ ok 809 should be strictly equal
1017
+ ok 810 callback is asynchronous
1018
+ ok 811 undefined
1019
+ # keys().next() while busy with nextv() yields error
1020
+ ok 812 returned error
1021
+ ok 813 should be strictly equal
1022
+ ok 814 callback is asynchronous
1023
+ ok 815 null
1024
+ ok 816 undefined
1025
+ # keys().next() while busy with all() yields error
1026
+ ok 817 returned error
1027
+ ok 818 should be strictly equal
1028
+ ok 819 callback is asynchronous
1029
+ ok 820 null
1030
+ ok 821 undefined
1031
+ # keys().nextv() after close() yields error
1032
+ ok 822 undefined
1033
+ ok 823 returned error
1034
+ ok 824 correct message
1035
+ ok 825 callback is asynchronous
1036
+ # keys().nextv() while busy with next() yields error
1037
+ ok 826 null
1038
+ ok 827 returned error
1039
+ ok 828 should be strictly equal
1040
+ ok 829 callback is asynchronous
1041
+ ok 830 undefined
1042
+ # keys().nextv() while busy with nextv() yields error
1043
+ ok 831 returned error
1044
+ ok 832 should be strictly equal
1045
+ ok 833 callback is asynchronous
1046
+ ok 834 null
1047
+ ok 835 undefined
1048
+ # keys().nextv() while busy with all() yields error
1049
+ ok 836 returned error
1050
+ ok 837 should be strictly equal
1051
+ ok 838 callback is asynchronous
1052
+ ok 839 null
1053
+ ok 840 undefined
1054
+ # keys().all() after close() yields error
1055
+ ok 841 undefined
1056
+ ok 842 returned error
1057
+ ok 843 correct message
1058
+ ok 844 callback is asynchronous
1059
+ # keys().all() while busy with next() yields error
1060
+ ok 845 null
1061
+ ok 846 returned error
1062
+ ok 847 should be strictly equal
1063
+ ok 848 callback is asynchronous
1064
+ ok 849 undefined
1065
+ # keys().all() while busy with nextv() yields error
1066
+ ok 850 returned error
1067
+ ok 851 should be strictly equal
1068
+ ok 852 callback is asynchronous
1069
+ ok 853 null
1070
+ ok 854 undefined
1071
+ # keys().all() while busy with all() yields error
1072
+ ok 855 returned error
1073
+ ok 856 should be strictly equal
1074
+ ok 857 callback is asynchronous
1075
+ ok 858 null
1076
+ ok 859 undefined
1077
+ # values().close() is idempotent