@@ -956,3 +956,63 @@ module Generators =
956956 static member BoolType () =
957957 arrayAndChunkPosition <| Arb.generate< bool>
958958 |> Arb.fromGen
959+
960+ type AssignArray () =
961+ static let pairOfVectorsOfEqualSize ( valuesGenerator : Gen < 'a >) =
962+ gen {
963+ let! targetArrayLength = Gen.sized <| fun size -> Gen.choose ( 2 , size)
964+
965+ let! targetArray = Gen.arrayOfLength targetArrayLength valuesGenerator
966+
967+ let! sourceArrayLength = Gen.choose ( 1 , targetArrayLength)
968+
969+ let! sourceArray = Gen.arrayOfLength sourceArrayLength valuesGenerator
970+
971+ let! startPosition = Gen.choose ( 0 , targetArrayLength - sourceArrayLength)
972+
973+ return ( sourceArray, targetArray, startPosition)
974+ }
975+
976+ static member IntType () =
977+ pairOfVectorsOfEqualSize <| Arb.generate< int>
978+ |> Arb.fromGen
979+
980+ static member FloatType () =
981+ pairOfVectorsOfEqualSize
982+ <| ( Arb.Default.NormalFloat()
983+ |> Arb.toGen
984+ |> Gen.map float)
985+ |> Arb.fromGen
986+
987+ static member Float32Type () =
988+ pairOfVectorsOfEqualSize
989+ <| ( normalFloat32Generator <| System.Random())
990+ |> Arb.fromGen
991+
992+ static member SByteType () =
993+ pairOfVectorsOfEqualSize <| Arb.generate< sbyte>
994+ |> Arb.fromGen
995+
996+ static member ByteType () =
997+ pairOfVectorsOfEqualSize <| Arb.generate< byte>
998+ |> Arb.fromGen
999+
1000+ static member Int16Type () =
1001+ pairOfVectorsOfEqualSize <| Arb.generate< int16>
1002+ |> Arb.fromGen
1003+
1004+ static member UInt16Type () =
1005+ pairOfVectorsOfEqualSize <| Arb.generate< uint16>
1006+ |> Arb.fromGen
1007+
1008+ static member Int32Type () =
1009+ pairOfVectorsOfEqualSize <| Arb.generate< int32>
1010+ |> Arb.fromGen
1011+
1012+ static member UInt32Type () =
1013+ pairOfVectorsOfEqualSize <| Arb.generate< uint32>
1014+ |> Arb.fromGen
1015+
1016+ static member BoolType () =
1017+ pairOfVectorsOfEqualSize <| Arb.generate< bool>
1018+ |> Arb.fromGen
0 commit comments