@@ -711,5 +711,54 @@ public void ToModelBindingData_Creates_Valid_BindingData()
711711
712712 Assert . Equal ( typedData . ModelBindingData , returned_typedata . ModelBindingData ) ;
713713 }
714+
715+ [ Fact ]
716+ public void ToModelBindingDataArray_Creates_Valid_BindingData ( )
717+ {
718+ var logger = MockNullLoggerFactory . CreateLogger ( ) ;
719+ var capabilities = new GrpcCapabilities ( logger ) ;
720+
721+ var binaryData = new BinaryData ( "hello world" ) ;
722+ var parameterBindingData = new ParameterBindingData ( "1.0" , "CosmosDB" , binaryData , "application/json" ) ;
723+ var parameterBindingDataArray = new ParameterBindingData [ ] { parameterBindingData , parameterBindingData } ;
724+
725+ TypedData returned_typedData = parameterBindingDataArray . ToModelBindingDataArray ( ) ;
726+
727+ var modelBindingData = new ModelBindingData
728+ {
729+ Version = parameterBindingData . Version ,
730+ ContentType = parameterBindingData . ContentType ,
731+ Source = parameterBindingData . Source ,
732+ Content = ByteString . CopyFrom ( parameterBindingData . Content )
733+ } ;
734+
735+ var collectionModelBindingData = new CollectionModelBindingData ( ) ;
736+ collectionModelBindingData . ModelBindingData . Add ( modelBindingData ) ;
737+ collectionModelBindingData . ModelBindingData . Add ( modelBindingData ) ;
738+
739+ TypedData typedData = new TypedData ( ) ;
740+ typedData . CollectionModelBindingData = collectionModelBindingData ;
741+
742+ Assert . Equal ( 2 , returned_typedData . CollectionModelBindingData . ModelBindingData . Count ) ;
743+ Assert . Equal ( typedData . CollectionModelBindingData . ModelBindingData . First ( ) , returned_typedData . CollectionModelBindingData . ModelBindingData . First ( ) ) ;
744+ }
745+
746+ [ Fact ]
747+ public void ToModelBindingData_EmptyAndNullArray_Creates_Valid_BindingData ( )
748+ {
749+ var parameterBindingDataEmptyArray = new ParameterBindingData [ ] { } ;
750+ var parameterBindingDataNullArray = new ParameterBindingData [ ] { null } ;
751+
752+ TypedData returned_emptyTypedData = parameterBindingDataEmptyArray . ToModelBindingDataArray ( ) ;
753+ TypedData returned_nullTypedData = parameterBindingDataNullArray . ToModelBindingDataArray ( ) ;
754+
755+ var collectionModelBindingData = new CollectionModelBindingData ( ) ;
756+
757+ TypedData typedData = new TypedData ( ) ;
758+ typedData . CollectionModelBindingData = collectionModelBindingData ;
759+
760+ Assert . Equal ( 0 , returned_emptyTypedData . CollectionModelBindingData . ModelBindingData . Count ) ;
761+ Assert . Equal ( 0 , returned_nullTypedData . CollectionModelBindingData . ModelBindingData . Count ) ;
762+ }
714763 }
715764}
0 commit comments