@k3000/store 1.4.3 → 1.5.0

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.
package/test.mjs CHANGED
@@ -365,202 +365,207 @@ function deleteDir(dir) {
365
365
  rmdirSync(dir)
366
366
  }
367
367
 
368
- import('./test/1/index.mjs').then(m => {
368
+ await new Promise(resolve => {
369
369
 
370
- const storage = m.default
370
+ import('./test/1/index.mjs').then(m => {
371
371
 
372
- test('测试基础操作', async t => {
372
+ const storage = m.default
373
373
 
374
- const test = {
375
- id: 1,
376
- uid: 'test',
377
- pwd: '123456',
378
- time: new Date('2022/01/01'),
379
- }
374
+ test('测试基础操作', async t => {
380
375
 
381
- const root = {
382
- id: 2,
383
- uid: 'root',
384
- pwd: '123123',
385
- valid: 1,
386
- time: new Date('2022/01/01'),
387
- }
376
+ const test = {
377
+ id: 1,
378
+ uid: 'test',
379
+ pwd: '123456',
380
+ time: new Date('2022/01/01'),
381
+ }
388
382
 
389
- const predicate = item => item.uid === 'root' && item.pwd === '123123'
383
+ const root = {
384
+ id: 2,
385
+ uid: 'root',
386
+ pwd: '123123',
387
+ valid: 1,
388
+ time: new Date('2022/01/01'),
389
+ }
390
390
 
391
- await t.test('测试查找操作(filter)', _ => {
391
+ const predicate = item => item.uid === 'root' && item.pwd === '123123'
392
392
 
393
- const result = storage.admin.filter(predicate)
393
+ await t.test('测试查找操作(filter)', _ => {
394
394
 
395
- assert.strictEqual(
396
- JSON.stringify(result),
397
- '[{"id":2,"pwd":"123123","time":1640966400000,"uid":"root","valid":1}]')
398
- })
395
+ const result = storage.admin.filter(predicate)
399
396
 
400
- await t.test('测试查找操作(page)', _ => {
397
+ assert.strictEqual(
398
+ JSON.stringify(result),
399
+ '[{"id":2,"pwd":"123123","time":1640966400000,"uid":"root","valid":1}]')
400
+ })
401
401
 
402
- const params = {key: 'name', index: 1, size: 1}
402
+ await t.test('测试查找操作(page)', _ => {
403
403
 
404
- assert.strictEqual(
405
- JSON.stringify(storage.admin.page(_ => 1, 1, 1)),
406
- JSON.stringify(storage.admin.page(_ => 1, 'index', 'size', params)))
407
- })
404
+ const params = {key: 'name', index: 1, size: 1}
408
405
 
409
- await t.test('测试查找操作(find)', _ => {
406
+ assert.strictEqual(
407
+ JSON.stringify(storage.admin.page(_ => 1, 1, 1)),
408
+ JSON.stringify(storage.admin.page(_ => 1, 'index', 'size', params)))
409
+ })
410
410
 
411
- const result = storage.admin.find(predicate)
411
+ await t.test('测试查找操作(find)', _ => {
412
412
 
413
- assert.strictEqual(
414
- JSON.stringify({...result}),
415
- '{"id":2,"pwd":"123123","time":1640966400000,"uid":"root","valid":1}')
416
- })
413
+ const result = storage.admin.find(predicate)
417
414
 
418
- await t.test('测试查找操作(findIndex)', _ => {
415
+ assert.strictEqual(
416
+ JSON.stringify({...result}),
417
+ '{"id":2,"pwd":"123123","time":1640966400000,"uid":"root","valid":1}')
418
+ })
419
419
 
420
- const result = storage.admin[storage.admin.findIndex(predicate)]
420
+ await t.test('测试查找操作(findIndex)', _ => {
421
421
 
422
- assert.strictEqual(
423
- JSON.stringify(result),
424
- '{"id":2,"pwd":"123123","time":1640966400000,"uid":"root","valid":1}')
425
- })
422
+ const result = storage.admin[storage.admin.findIndex(predicate)]
426
423
 
427
- await t.test('测试查找操作(some)', _ => {
424
+ assert.strictEqual(
425
+ JSON.stringify(result),
426
+ '{"id":2,"pwd":"123123","time":1640966400000,"uid":"root","valid":1}')
427
+ })
428
428
 
429
- assert.strictEqual(storage.admin.some(predicate), true)
430
- })
429
+ await t.test('测试查找操作(some)', _ => {
431
430
 
432
- await t.test('测试查找操作(通过索引)', _ => {
431
+ assert.strictEqual(storage.admin.some(predicate), true)
432
+ })
433
433
 
434
- const result = storage.admin.indexByUid('root')
434
+ await t.test('测试查找操作(通过索引)', _ => {
435
435
 
436
- assert.strictEqual(
437
- JSON.stringify(result),
438
- '[{"id":2,"pwd":"123123","time":1640966400000,"uid":"root","valid":1}]')
439
- })
436
+ const result = storage.admin.indexByUid('root')
440
437
 
441
- await t.test('测试查找操作(通过索引时间)', _ => {
438
+ assert.strictEqual(
439
+ JSON.stringify(result),
440
+ '[{"id":2,"pwd":"123123","time":1640966400000,"uid":"root","valid":1}]')
441
+ })
442
442
 
443
- const result = storage.admin.indexByTime({before: -Infinity, after: new Date('2023/01/01')})
443
+ await t.test('测试查找操作(通过索引时间)', _ => {
444
444
 
445
- assert.strictEqual(
446
- JSON.stringify(result),
447
- '[{"id":2,"pwd":"123123","time":1640966400000,"uid":"root","valid":1},{"id":1,"pwd":"123456","time":1640966400000,"uid":"test","valid":0}]')
448
- })
445
+ const result = storage.admin.indexByTime({before: -Infinity, after: new Date('2023/01/01')})
449
446
 
450
- await t.test('测试添加操作(push)', _ => {
447
+ assert.strictEqual(
448
+ JSON.stringify(result),
449
+ '[{"id":2,"pwd":"123123","time":1640966400000,"uid":"root","valid":1},{"id":1,"pwd":"123456","time":1640966400000,"uid":"test","valid":0}]')
450
+ })
451
451
 
452
- storage.admin.remove(...storage.admin.filter(item => ['test', 'root'].includes(item.uid)))
452
+ await t.test('测试添加操作(push)', _ => {
453
453
 
454
- storage.admin.push(test)
454
+ storage.admin.remove(...storage.admin.filter(item => ['test', 'root'].includes(item.uid)))
455
455
 
456
- storage.admin.push(root)
456
+ storage.admin.push(test)
457
457
 
458
- assert.strictEqual(
459
- JSON.stringify(storage.admin),
460
- '[{"id":1,"pwd":"123456","time":1640966400000,"uid":"test","valid":0},{"id":2,"pwd":"123123","time":1640966400000,"uid":"root","valid":1}]')
461
- })
458
+ storage.admin.push(root)
462
459
 
463
- await t.test('测试添加操作(pop)', _ => {
460
+ assert.strictEqual(
461
+ JSON.stringify(storage.admin),
462
+ '[{"id":1,"pwd":"123456","time":1640966400000,"uid":"test","valid":0},{"id":2,"pwd":"123123","time":1640966400000,"uid":"root","valid":1}]')
463
+ })
464
464
 
465
- storage.admin.pop()
465
+ await t.test('测试添加操作(pop)', _ => {
466
466
 
467
- assert.strictEqual(storage.admin.length, 1)
467
+ storage.admin.pop()
468
468
 
469
- storage.admin.remove(...storage.admin.filter(item => ['test', 'root'].includes(item.uid)))
469
+ assert.strictEqual(storage.admin.length, 1)
470
470
 
471
- storage.admin.push(test)
471
+ storage.admin.remove(...storage.admin.filter(item => ['test', 'root'].includes(item.uid)))
472
472
 
473
- storage.admin.push(root)
474
- })
473
+ storage.admin.push(test)
474
+
475
+ storage.admin.push(root)
476
+ })
475
477
 
476
- await t.test('测试添加操作(unshift)', _ => {
478
+ await t.test('测试添加操作(unshift)', _ => {
477
479
 
478
- storage.admin.remove(...storage.admin.indexByUid('root'))
480
+ storage.admin.remove(...storage.admin.indexByUid('root'))
479
481
 
480
- storage.admin.unshift(root)
482
+ storage.admin.unshift(root)
481
483
 
482
- assert.strictEqual(
483
- JSON.stringify(storage.admin),
484
- '[{"id":2,"pwd":"123123","time":1640966400000,"uid":"root","valid":1},{"id":1,"pwd":"123456","time":1640966400000,"uid":"test","valid":0}]')
485
- })
484
+ assert.strictEqual(
485
+ JSON.stringify(storage.admin),
486
+ '[{"id":2,"pwd":"123123","time":1640966400000,"uid":"root","valid":1},{"id":1,"pwd":"123456","time":1640966400000,"uid":"test","valid":0}]')
487
+ })
486
488
 
487
- await t.test('测试添加操作(splice)', _ => {
489
+ await t.test('测试添加操作(splice)', _ => {
488
490
 
489
- storage.admin.remove(...storage.admin.indexByUid('root'))
491
+ storage.admin.remove(...storage.admin.indexByUid('root'))
490
492
 
491
- storage.admin.splice(0, 0, root)
493
+ storage.admin.splice(0, 0, root)
492
494
 
493
- assert.strictEqual(
494
- JSON.stringify(storage.admin),
495
- '[{"id":2,"pwd":"123123","time":1640966400000,"uid":"root","valid":1},{"id":1,"pwd":"123456","time":1640966400000,"uid":"test","valid":0}]')
496
- })
495
+ assert.strictEqual(
496
+ JSON.stringify(storage.admin),
497
+ '[{"id":2,"pwd":"123123","time":1640966400000,"uid":"root","valid":1},{"id":1,"pwd":"123456","time":1640966400000,"uid":"test","valid":0}]')
498
+ })
497
499
 
498
- await t.test('测试联合查询(filterFlat)', _ => {
500
+ await t.test('测试联合查询(filterFlat)', _ => {
499
501
 
500
- assert.strictEqual(
501
- JSON.stringify(storage.admin.filterFlat(storage.log, (a, b) => a.uid === b.uid)),
502
- '[{"content":"login","id":1,"time":1640966400000,"type":0,"uid":"test","pwd":"123456","valid":0}'
503
- + ',{"content":"test","id":1,"time":1640966400000,"type":0,"uid":"test","pwd":"123456","valid":0}]')
504
- })
502
+ assert.strictEqual(
503
+ JSON.stringify(storage.admin.filterFlat(storage.log, (a, b) => a.uid === b.uid)),
504
+ '[{"content":"login","id":1,"time":1640966400000,"type":0,"uid":"test","pwd":"123456","valid":0}'
505
+ + ',{"content":"test","id":1,"time":1640966400000,"type":0,"uid":"test","pwd":"123456","valid":0}]')
506
+ })
505
507
 
506
- await t.test('测试联合查询(eachFlat)', _ => {
508
+ await t.test('测试联合查询(eachFlat)', _ => {
507
509
 
508
- assert.strictEqual(
509
- JSON.stringify(storage.admin.eachFlat(storage.log, (a, b) => a.uid === b.uid)),
510
- '[{"id":2,"pwd":"123123","time":1640966400000,"uid":"root","valid":1},{"content":"login","id":1,'
511
- + '"time":1640966400000,"type":0,"uid":"test","pwd":"123456","valid":0},{"content":"test","id":1,"time":1640966400000,'
512
- + '"type":0,"uid":"test","pwd":"123456","valid":0}]')
513
- })
510
+ assert.strictEqual(
511
+ JSON.stringify(storage.admin.eachFlat(storage.log, (a, b) => a.uid === b.uid)),
512
+ '[{"id":2,"pwd":"123123","time":1640966400000,"uid":"root","valid":1},{"content":"login","id":1,'
513
+ + '"time":1640966400000,"type":0,"uid":"test","pwd":"123456","valid":0},{"content":"test","id":1,"time":1640966400000,'
514
+ + '"type":0,"uid":"test","pwd":"123456","valid":0}]')
515
+ })
514
516
 
515
- await t.test('测试修改操作', _ => {
517
+ await t.test('测试修改操作', _ => {
516
518
 
517
- let result = storage.admin.filter(predicate)
519
+ let result = storage.admin.filter(predicate)
518
520
 
519
- result[0].pwd = '111111'
520
- result[0].time = new Date('2022/01/01')
521
+ result[0].pwd = '111111'
522
+ result[0].time = new Date('2022/01/01')
521
523
 
522
- result = storage.admin.filter(item => item.uid === 'root' && item.pwd === '111111')
524
+ result = storage.admin.filter(item => item.uid === 'root' && item.pwd === '111111')
523
525
 
524
- assert.strictEqual(
525
- JSON.stringify(result),
526
- '[{"id":2,"pwd":"111111","time":1640966400000,"uid":"root","valid":1}]')
527
- })
526
+ assert.strictEqual(
527
+ JSON.stringify(result),
528
+ '[{"id":2,"pwd":"111111","time":1640966400000,"uid":"root","valid":1}]')
529
+ })
528
530
 
529
- await t.test('测试删除操作', _ => {
531
+ await t.test('测试删除操作', _ => {
530
532
 
531
- storage.admin.remove(...storage.admin.filter(item => !item.valid))
533
+ storage.admin.remove(...storage.admin.filter(item => !item.valid))
532
534
 
533
- assert.strictEqual(
534
- JSON.stringify(storage.admin),
535
- '[{"id":2,"pwd":"111111","time":1640966400000,"uid":"root","valid":1}]')
536
- })
535
+ assert.strictEqual(
536
+ JSON.stringify(storage.admin),
537
+ '[{"id":2,"pwd":"111111","time":1640966400000,"uid":"root","valid":1}]')
538
+ })
539
+
540
+ storage.admin.remove(...storage.admin)
541
+
542
+ storage.admin.push(test)
537
543
 
538
- storage.admin.remove(...storage.admin)
544
+ storage.admin.push(root)
539
545
 
540
- storage.admin.push(test)
546
+ storage.log.remove(...storage.log)
541
547
 
542
- storage.admin.push(root)
548
+ storage.log.push({
549
+ uid: 'test',
550
+ id: 2,
551
+ time: new Date('2022/01/01'),
552
+ content: 'login'
553
+ })
543
554
 
544
- storage.log.remove(...storage.log)
555
+ storage.log.push({
556
+ uid: 'test',
557
+ id: 1,
558
+ time: new Date('2022/01/02'),
559
+ content: 'test'
560
+ })
545
561
 
546
- storage.log.push({
547
- uid: 'test',
548
- id: 2,
549
- time: new Date('2022/01/01'),
550
- content: 'login'
551
- })
562
+ m.close()
552
563
 
553
- storage.log.push({
554
- uid: 'test',
555
- id: 1,
556
- time: new Date('2022/01/02'),
557
- content: 'test'
564
+ resolve()
558
565
  })
559
566
 
560
- m.close()
561
- })
562
-
563
- }).catch(e => console.error(e))
567
+ }).catch(e => console.error(e))
568
+ })
564
569
 
565
570
  test('测试结构操作', async t => {
566
571