@@ -524,11 +524,125 @@ public async Task TestInFilter()
524
524
var usersResponse = await client . Table < User > ( ) . Get ( ) ;
525
525
526
526
var supaFilteredUsers = filteredResponse . Models ;
527
- var linqFilteredUsers = usersResponse . Models . Where ( u => u . Username == "supabot" || u . Username == "kiwicopple" ) . OrderByDescending ( u => u . Username ) . ToList ( ) ;
527
+ var linqFilteredUsers = usersResponse . Models . Where ( u => u . Username == "supabot" || u . Username == "kiwicopple" ) . ToList ( ) ;
528
528
529
529
CollectionAssert . AreEqual ( linqFilteredUsers , supaFilteredUsers ) ;
530
530
}
531
531
532
+ [ TestMethod ( "filters: eq" ) ]
533
+ public async Task TestEqualsFilter ( )
534
+ {
535
+ var client = Client . Instance . Initialize ( baseUrl , new ClientAuthorization ( AuthorizationType . Open , null ) ) ;
536
+
537
+ var filteredResponse = await client . Table < User > ( ) . Filter ( "username" , Operator . Equals , "supabot" ) . Get ( ) ;
538
+ var usersResponse = await client . Table < User > ( ) . Get ( ) ;
539
+
540
+ var supaFilteredUsers = filteredResponse . Models ;
541
+ var linqFilteredUsers = usersResponse . Models . Where ( u => u . Username == "supabot" ) . ToList ( ) ;
542
+
543
+ Assert . AreEqual ( 1 , supaFilteredUsers . Count ) ;
544
+ CollectionAssert . AreEqual ( linqFilteredUsers , supaFilteredUsers ) ;
545
+ }
546
+
547
+ [ TestMethod ( "filters: gt" ) ]
548
+ public async Task TestGreaterThanFilter ( )
549
+ {
550
+ var client = Client . Instance . Initialize ( baseUrl , new ClientAuthorization ( AuthorizationType . Open , null ) ) ;
551
+
552
+ var filteredResponse = await client . Table < Message > ( ) . Filter ( "id" , Operator . GreaterThan , "1" ) . Get ( ) ;
553
+ var messagesResponse = await client . Table < Message > ( ) . Get ( ) ;
554
+
555
+ var supaFilteredMessages = filteredResponse . Models ;
556
+ var linqFilteredMessages = messagesResponse . Models . Where ( m => m . Id > 1 ) . ToList ( ) ;
557
+
558
+ Assert . AreEqual ( 1 , supaFilteredMessages . Count ) ;
559
+ CollectionAssert . AreEqual ( linqFilteredMessages , supaFilteredMessages ) ;
560
+ }
561
+
562
+ [ TestMethod ( "filters: gte" ) ]
563
+ public async Task TestGreaterThanOrEqualFilter ( )
564
+ {
565
+ var client = Client . Instance . Initialize ( baseUrl , new ClientAuthorization ( AuthorizationType . Open , null ) ) ;
566
+
567
+ var filteredResponse = await client . Table < Message > ( ) . Filter ( "id" , Operator . GreaterThanOrEqual , "1" ) . Get ( ) ;
568
+ var messagesResponse = await client . Table < Message > ( ) . Get ( ) ;
569
+
570
+ var supaFilteredMessages = filteredResponse . Models ;
571
+ var linqFilteredMessages = messagesResponse . Models . Where ( m => m . Id >= 1 ) . ToList ( ) ;
572
+
573
+ CollectionAssert . AreEqual ( linqFilteredMessages , supaFilteredMessages ) ;
574
+ }
575
+
576
+ [ TestMethod ( "filters: lt" ) ]
577
+ public async Task TestlessThanFilter ( )
578
+ {
579
+ var client = Client . Instance . Initialize ( baseUrl , new ClientAuthorization ( AuthorizationType . Open , null ) ) ;
580
+
581
+ var filteredResponse = await client . Table < Message > ( ) . Filter ( "id" , Operator . LessThan , "2" ) . Get ( ) ;
582
+ var messagesResponse = await client . Table < Message > ( ) . Get ( ) ;
583
+
584
+ var supaFilteredMessages = filteredResponse . Models ;
585
+ var linqFilteredMessages = messagesResponse . Models . Where ( m => m . Id < 2 ) . ToList ( ) ;
586
+
587
+ CollectionAssert . AreEqual ( linqFilteredMessages , supaFilteredMessages ) ;
588
+ }
589
+
590
+ [ TestMethod ( "filters: lte" ) ]
591
+ public async Task TestLessThanOrEqualFilter ( )
592
+ {
593
+ var client = Client . Instance . Initialize ( baseUrl , new ClientAuthorization ( AuthorizationType . Open , null ) ) ;
594
+
595
+ var filteredResponse = await client . Table < Message > ( ) . Filter ( "id" , Operator . LessThanOrEqual , "2" ) . Get ( ) ;
596
+ var messagesResponse = await client . Table < Message > ( ) . Get ( ) ;
597
+
598
+ var supaFilteredMessages = filteredResponse . Models ;
599
+ var linqFilteredMessages = messagesResponse . Models . Where ( m => m . Id <= 2 ) . ToList ( ) ;
600
+
601
+ CollectionAssert . AreEqual ( linqFilteredMessages , supaFilteredMessages ) ;
602
+ }
603
+
604
+ [ TestMethod ( "filters: nqe" ) ]
605
+ public async Task TestNotEqualFilter ( )
606
+ {
607
+ var client = Client . Instance . Initialize ( baseUrl , new ClientAuthorization ( AuthorizationType . Open , null ) ) ;
608
+
609
+ var filteredResponse = await client . Table < Message > ( ) . Filter ( "id" , Operator . NotEqual , "2" ) . Get ( ) ;
610
+ var messagesResponse = await client . Table < Message > ( ) . Get ( ) ;
611
+
612
+ var supaFilteredMessages = filteredResponse . Models ;
613
+ var linqFilteredMessages = messagesResponse . Models . Where ( m => m . Id != 2 ) . ToList ( ) ;
614
+
615
+ CollectionAssert . AreEqual ( linqFilteredMessages , supaFilteredMessages ) ;
616
+ }
617
+
618
+ [ TestMethod ( "filters: like" ) ]
619
+ public async Task TestLikeFilter ( )
620
+ {
621
+ var client = Client . Instance . Initialize ( baseUrl , new ClientAuthorization ( AuthorizationType . Open , null ) ) ;
622
+
623
+ var filteredResponse = await client . Table < Message > ( ) . Filter ( "username" , Operator . Like , "s%" ) . Get ( ) ;
624
+ var messagesResponse = await client . Table < Message > ( ) . Get ( ) ;
625
+
626
+ var supaFilteredMessages = filteredResponse . Models ;
627
+ var linqFilteredMessages = messagesResponse . Models . Where ( m => m . UserName . StartsWith ( 's' ) ) . ToList ( ) ;
628
+
629
+ CollectionAssert . AreEqual ( linqFilteredMessages , supaFilteredMessages ) ;
630
+ }
631
+
632
+ [ TestMethod ( "filters: ilike" ) ]
633
+ public async Task TestILikeFilter ( )
634
+ {
635
+ var client = Client . Instance . Initialize ( baseUrl , new ClientAuthorization ( AuthorizationType . Open , null ) ) ;
636
+
637
+ var filteredResponse = await client . Table < Message > ( ) . Filter ( "username" , Operator . ILike , "%SUPA%" ) . Get ( ) ;
638
+ var messagesResponse = await client . Table < Message > ( ) . Get ( ) ;
639
+
640
+ var supaFilteredMessages = filteredResponse . Models ;
641
+ var linqFilteredMessages = messagesResponse . Models . Where ( m => m . UserName . Contains ( "SUPA" , StringComparison . OrdinalIgnoreCase ) ) . ToList ( ) ;
642
+
643
+ CollectionAssert . AreEqual ( linqFilteredMessages , supaFilteredMessages ) ;
644
+ }
645
+
532
646
[ TestMethod ( "select: basic" ) ]
533
647
public async Task TestSelect ( )
534
648
{
0 commit comments