@@ -408,6 +408,7 @@ Deno.test('data', async (t) => {
408
408
fields : [ 'name' ] ,
409
409
sort : [ 'name' ] ,
410
410
limit : 1000 ,
411
+ skip : 2 ,
411
412
use_index : 'idx-name' ,
412
413
} ,
413
414
} ) ,
@@ -577,6 +578,92 @@ Deno.test('data', async (t) => {
577
578
} )
578
579
} )
579
580
581
+ await t . step ( 'skip' , async ( t ) => {
582
+ await t . step ( 'should parse to a number, if provided' , async ( ) => {
583
+ assert (
584
+ await adapter . queryDocuments ( {
585
+ db : 'foo' ,
586
+ query : {
587
+ selector : { name : { $gt : 'mike' } } ,
588
+ fields : [ 'name' ] ,
589
+ sort : [ 'ASC' as const ] ,
590
+ skip : 1000 ,
591
+ use_index : 'idx-name' ,
592
+ } ,
593
+ } ) ,
594
+ )
595
+
596
+ assert (
597
+ await adapter . queryDocuments ( {
598
+ db : 'foo' ,
599
+ query : {
600
+ selector : { name : { $gt : 'mike' } } ,
601
+ fields : [ 'name' ] ,
602
+ sort : [ 'ASC' as const ] ,
603
+ limit : '1000' ,
604
+ use_index : 'idx-name' ,
605
+ } ,
606
+ } ) ,
607
+ )
608
+
609
+ assert (
610
+ await adapter . queryDocuments ( {
611
+ db : 'foo' ,
612
+ query : {
613
+ selector : { name : { $gt : 'mike' } } ,
614
+ fields : [ 'name' ] ,
615
+ sort : [ 'ASC' as const ] ,
616
+ skip : ' 1000 ' ,
617
+ use_index : 'idx-name' ,
618
+ } ,
619
+ } ) ,
620
+ )
621
+
622
+ assert (
623
+ await adapter . queryDocuments ( {
624
+ db : 'foo' ,
625
+ query : {
626
+ selector : { name : { $gt : 'mike' } } ,
627
+ fields : [ 'name' ] ,
628
+ sort : [ 'ASC' as const ] ,
629
+ skip : undefined ,
630
+ use_index : 'idx-name' ,
631
+ } ,
632
+ } ) ,
633
+ )
634
+ } )
635
+
636
+ await t . step ( 'should reject the unparseable value' , async ( ) => {
637
+ await assertRejects ( ( ) =>
638
+ adapter . queryDocuments ( {
639
+ db : '123' ,
640
+ query : {
641
+ selector : { name : { $gt : 'mike' } } ,
642
+ fields : [ 'name' ] ,
643
+ sort : [ 'ASC' as const ] ,
644
+ // @ts -ignore
645
+ skip : 'wut' ,
646
+ use_index : 'idx-name' ,
647
+ } ,
648
+ } )
649
+ )
650
+
651
+ await assertRejects ( ( ) =>
652
+ adapter . queryDocuments ( {
653
+ db : '123' ,
654
+ query : {
655
+ selector : { name : { $gt : 'mike' } } ,
656
+ fields : [ 'name' ] ,
657
+ sort : [ 'ASC' as const ] ,
658
+ // @ts -ignore
659
+ skip : [ ] ,
660
+ use_index : 'idx-name' ,
661
+ } ,
662
+ } )
663
+ )
664
+ } )
665
+ } )
666
+
580
667
await assertRejects ( ( ) =>
581
668
adapter . queryDocuments ( {
582
669
db : '123' ,
@@ -680,11 +767,11 @@ Deno.test('data', async (t) => {
680
767
)
681
768
682
769
await assertRejects ( ( ) =>
683
- // @ts -ignore
684
770
adapter . indexDocuments ( {
685
771
db : 'foo' ,
686
772
fields : [ 'name' ] ,
687
773
name : 'idx-name' ,
774
+ // @ts -ignore
688
775
partialFilter : 123 ,
689
776
} )
690
777
)
0 commit comments