@@ -681,14 +681,21 @@ public async Task ForgetAsync()
681681 public void Get ( )
682682 {
683683 var commands = new JsonCommands ( redisFixture . Redis . GetDatabase ( ) ) ;
684- var keys = CreateKeyNames ( 2 ) ;
684+ var keys = CreateKeyNames ( 3 ) ;
685685 var key = keys [ 0 ] ;
686686 var complexKey = keys [ 1 ] ;
687+ var caseInsensitiveKey = keys [ 2 ] ;
687688 commands . Set ( key , "$" , new Person ( ) { Age = 35 , Name = "Alice" } ) ;
688689 commands . Set ( complexKey , "$" , new { a = new Person ( ) { Age = 35 , Name = "Alice" } , b = new { a = new Person ( ) { Age = 35 , Name = "Alice" } } } ) ;
690+ commands . Set ( caseInsensitiveKey , "$" , new { name = "Alice" , AGE = 35 } ) ;
689691 var result = commands . Get < Person > ( key ) ;
690692 Assert . Equal ( "Alice" , result ! . Name ) ;
691693 Assert . Equal ( 35 , result . Age ) ;
694+ var jsonOptions = new JsonSerializerOptions { PropertyNameCaseInsensitive = true } ;
695+ result = commands . Get < Person > ( caseInsensitiveKey , "$" , jsonOptions ) ;
696+ Assert . NotNull ( result ) ;
697+ Assert . Equal ( "Alice" , result ! . Name ) ;
698+ Assert . Equal ( 35 , result . Age ) ;
692699 var people = commands . GetEnumerable < Person > ( complexKey , "$..a" ) . ToArray ( ) ;
693700 Assert . Equal ( 2 , people . Length ) ;
694701 Assert . Equal ( "Alice" , people [ 0 ] ! . Name ) ;
@@ -701,14 +708,21 @@ public void Get()
701708 public async Task GetAsync ( )
702709 {
703710 var commands = new JsonCommandsAsync ( redisFixture . Redis . GetDatabase ( ) ) ;
704- var keys = CreateKeyNames ( 2 ) ;
711+ var keys = CreateKeyNames ( 3 ) ;
705712 var key = keys [ 0 ] ;
706713 var complexKey = keys [ 1 ] ;
714+ var caseInsensitiveKey = keys [ 2 ] ;
707715 await commands . SetAsync ( key , "$" , new Person ( ) { Age = 35 , Name = "Alice" } ) ;
708716 await commands . SetAsync ( complexKey , "$" , new { a = new Person ( ) { Age = 35 , Name = "Alice" } , b = new { a = new Person ( ) { Age = 35 , Name = "Alice" } } } ) ;
717+ await commands . SetAsync ( caseInsensitiveKey , "$" , new { name = "Alice" , AGE = 35 } ) ;
709718 var result = await commands . GetAsync < Person > ( key ) ;
710719 Assert . Equal ( "Alice" , result ! . Name ) ;
711720 Assert . Equal ( 35 , result . Age ) ;
721+ var jsonOptions = new JsonSerializerOptions { PropertyNameCaseInsensitive = true } ;
722+ result = await commands . GetAsync < Person > ( caseInsensitiveKey , "$" , jsonOptions ) ;
723+ Assert . NotNull ( result ) ;
724+ Assert . Equal ( "Alice" , result ! . Name ) ;
725+ Assert . Equal ( 35 , result . Age ) ;
712726 var people = ( await commands . GetEnumerableAsync < Person > ( complexKey , "$..a" ) ) . ToArray ( ) ;
713727 Assert . Equal ( 2 , people . Length ) ;
714728 Assert . Equal ( "Alice" , people [ 0 ] ! . Name ) ;
@@ -730,8 +744,8 @@ public void MSet()
730744 new KeyPathValue ( key1 , "$" , new { a = "hello" } ) ,
731745 new KeyPathValue ( key2 , "$" , new { a = "world" } )
732746 } ;
733- commands . MSet ( values )
734- ;
747+ commands . MSet ( values ) ;
748+
735749 var result = commands . MGet ( keys . Select ( x => new RedisKey ( x ) ) . ToArray ( ) , "$.a" ) ;
736750
737751 Assert . Equal ( "[\" hello\" ]" , result [ 0 ] . ToString ( ) ) ;
@@ -753,8 +767,8 @@ public async Task MSetAsync()
753767 new KeyPathValue ( key1 , "$" , new { a = "hello" } ) ,
754768 new KeyPathValue ( key2 , "$" , new { a = "world" } )
755769 } ;
756- await commands . MSetAsync ( values )
757- ;
770+ await commands . MSetAsync ( values ) ;
771+
758772 var result = await commands . MGetAsync ( keys . Select ( x => new RedisKey ( x ) ) . ToArray ( ) , "$.a" ) ;
759773
760774 Assert . Equal ( "[\" hello\" ]" , result [ 0 ] . ToString ( ) ) ;
0 commit comments