@@ -366,6 +366,35 @@ public async Task InStyleFilterParameterAsync()
366
366
}
367
367
}
368
368
369
+ [ Test ]
370
+ public void InStyleFilterParameterWithHashSetAsync ( )
371
+ {
372
+ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
373
+ // one-to-many loading tests
374
+ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
375
+ log . Info ( "Starting one-to-many collection loader filter tests with HashSet." ) ;
376
+ using ( var session = OpenSession ( ) )
377
+ {
378
+ Assert . Multiple (
379
+ async ( ) =>
380
+ {
381
+ session . EnableFilter ( "regionlist" )
382
+ . SetParameterList ( "regions" , new HashSet < string > { "LA" , "APAC" } ) ;
383
+
384
+ log . Debug ( "Performing query of Salespersons" ) ;
385
+ var salespersons = await ( session . CreateQuery ( "from Salesperson" ) . ListAsync ( ) ) ;
386
+ Assert . That ( salespersons . Count , Is . EqualTo ( 1 ) , "Incorrect salesperson count" ) ;
387
+
388
+ session . EnableFilter ( "guidlist" )
389
+ . SetParameterList ( "guids" , new HashSet < Guid > { testData . Product1Guid , testData . Product2Guid } ) ;
390
+
391
+ log . Debug ( "Performing query of Products" ) ;
392
+ var products = await ( session . CreateQuery ( "from Product" ) . ListAsync ( ) ) ;
393
+ Assert . That ( products . Count , Is . EqualTo ( 2 ) , "Incorrect product count" ) ;
394
+ } ) ;
395
+ }
396
+ }
397
+
369
398
[ Test ]
370
399
public async Task ManyToManyFilterOnCriteriaAsync ( )
371
400
{
@@ -572,6 +601,8 @@ private class TestData
572
601
public DateTime nextMonth ;
573
602
public DateTime sixMonthsAgo ;
574
603
public DateTime fourMonthsAgo ;
604
+ public Guid Product1Guid ;
605
+ public Guid Product2Guid ;
575
606
576
607
private DynamicFilterTestAsync outer ;
577
608
@@ -631,6 +662,8 @@ public TestData(DynamicFilterTestAsync outer)
631
662
product1 . StockNumber = ( 123 ) ;
632
663
product1 . EffectiveStartDate = ( lastMonth ) ;
633
664
product1 . EffectiveEndDate = ( nextMonth ) ;
665
+ product1 . ProductGuid = Guid . NewGuid ( ) ;
666
+ Product1Guid = product1 . ProductGuid ;
634
667
635
668
product1 . AddCategory ( cat1 ) ;
636
669
product1 . AddCategory ( cat2 ) ;
@@ -655,6 +688,8 @@ public TestData(DynamicFilterTestAsync outer)
655
688
product2 . StockNumber = ( 124 ) ;
656
689
product2 . EffectiveStartDate = ( sixMonthsAgo ) ;
657
690
product2 . EffectiveEndDate = ( DateTime . Today ) ;
691
+ product2 . ProductGuid = Guid . NewGuid ( ) ;
692
+ Product2Guid = product2 . ProductGuid ;
658
693
659
694
Category cat3 = new Category ( "test cat 2" , sixMonthsAgo , DateTime . Today ) ;
660
695
product2 . AddCategory ( cat3 ) ;
@@ -731,6 +766,8 @@ public void Prepare()
731
766
product1 . StockNumber = ( 123 ) ;
732
767
product1 . EffectiveStartDate = ( lastMonth ) ;
733
768
product1 . EffectiveEndDate = ( nextMonth ) ;
769
+ product1 . ProductGuid = Guid . NewGuid ( ) ;
770
+ Product1Guid = product1 . ProductGuid ;
734
771
735
772
product1 . AddCategory ( cat1 ) ;
736
773
product1 . AddCategory ( cat2 ) ;
@@ -755,6 +792,8 @@ public void Prepare()
755
792
product2 . StockNumber = ( 124 ) ;
756
793
product2 . EffectiveStartDate = ( sixMonthsAgo ) ;
757
794
product2 . EffectiveEndDate = ( DateTime . Today ) ;
795
+ product2 . ProductGuid = Guid . NewGuid ( ) ;
796
+ Product2Guid = product2 . ProductGuid ;
758
797
759
798
Category cat3 = new Category ( "test cat 2" , sixMonthsAgo , DateTime . Today ) ;
760
799
product2 . AddCategory ( cat3 ) ;
0 commit comments