public void TestCommandSerDeForSqlArrow() { var udfWrapper = new ArrowUdfWrapper <StringArray, StringArray>( (strings) => (StringArray)ToArrowArray( Enumerable.Range(0, strings.Length) .Select(i => $"hello {strings.GetString(i)}") .ToArray())); var workerFunction = new ArrowWorkerFunction(udfWrapper.Execute); byte[] serializedCommand = Utils.CommandSerDe.Serialize( workerFunction.Func, Utils.CommandSerDe.SerializedMode.Row, Utils.CommandSerDe.SerializedMode.Row); using var ms = new MemoryStream(serializedCommand); var deserializedWorkerFunction = new ArrowWorkerFunction( Utils.CommandSerDe.Deserialize <ArrowWorkerFunction.ExecuteDelegate>( ms, out Utils.CommandSerDe.SerializedMode serializerMode, out Utils.CommandSerDe.SerializedMode deserializerMode, out var runMode)); Assert.Equal(Utils.CommandSerDe.SerializedMode.Row, serializerMode); Assert.Equal(Utils.CommandSerDe.SerializedMode.Row, deserializerMode); Assert.Equal("N", runMode); IArrowArray input = ToArrowArray(new[] { "spark" }); IArrowArray result = deserializedWorkerFunction.Func(new[] { input }, new[] { 0 }); AssertEquals("hello spark", result); }
public void TestArrowUdfWrapper3() { var udfWrapper = new ArrowUdfWrapper <string, string, string, string>( (str1, str2, str3) => str1 + str2 + str3); ValidateArrowWrapper(3, udfWrapper); }
public void TestArrowUdfWrapper5() { var udfWrapper = new ArrowUdfWrapper <string, string, string, string, string, string>( (str1, str2, str3, str4, str5) => str1 + str2 + str3 + str4 + str5); ValidateArrowWrapper(5, udfWrapper); }
public void TestArrowUdfWrapper1() { var udfWrapper = new ArrowUdfWrapper <string, string>( (str1) => str1); ValidateArrowWrapper(1, udfWrapper); }
public void TestArrowUdfWrapper2() { var udfWrapper = new ArrowUdfWrapper <string, string, string>( (str1, str2) => str1 + str2); ValidateArrowWrapper(2, udfWrapper); }
public void TestCommandSerDeForSqlArrow() { var udfWrapper = new ArrowUdfWrapper <string, string>((str) => $"hello {str}"); var workerFunction = new ArrowWorkerFunction(udfWrapper.Execute); var serializedCommand = Utils.CommandSerDe.Serialize( workerFunction.Func, Utils.CommandSerDe.SerializedMode.Row, Utils.CommandSerDe.SerializedMode.Row); using (var ms = new MemoryStream(serializedCommand)) { var deserializedWorkerFunction = new ArrowWorkerFunction( Utils.CommandSerDe.Deserialize <ArrowWorkerFunction.ExecuteDelegate>( ms, out Utils.CommandSerDe.SerializedMode serializerMode, out Utils.CommandSerDe.SerializedMode deserializerMode, out var runMode)); Assert.Equal(Utils.CommandSerDe.SerializedMode.Row, serializerMode); Assert.Equal(Utils.CommandSerDe.SerializedMode.Row, deserializerMode); Assert.Equal("N", runMode); Apache.Arrow.IArrowArray input = ArrowArrayHelpers.ToArrowArray(new[] { "spark" }); Apache.Arrow.IArrowArray result = deserializedWorkerFunction.Func(0, new[] { input }, new[] { 0 }); ArrowTestUtils.AssertEquals("hello spark", result); } }
public void TestArrowUdfWrapper5() { var udfWrapper = new ArrowUdfWrapper <StringArray, StringArray, StringArray, StringArray, StringArray, StringArray>( (str1, str2, str3, str4, str5) => Concat(str1, str2, str3, str4, str5)); ValidateArrowWrapper(5, udfWrapper); }
public void TestArrowUdfWrapper3() { var udfWrapper = new ArrowUdfWrapper <StringArray, StringArray, StringArray, StringArray>( (str1, str2, str3) => Concat(str1, str2, str3)); ValidateArrowWrapper(3, udfWrapper); }
public void TestArrowUdfWrapper10() { var udfWrapper = new ArrowUdfWrapper < string, string, string, string, string, string, string, string, string, string, string>( (str1, str2, str3, str4, str5, str6, str7, str8, str9, str10) => str1 + str2 + str3 + str4 + str5 + str6 + str7 + str8 + str9 + str10); ValidateArrowWrapper(10, udfWrapper); }
public void TestArrowUdfWrapper8() { var udfWrapper = new ArrowUdfWrapper < string, string, string, string, string, string, string, string, string>( (str1, str2, str3, str4, str5, str6, str7, str8) => str1 + str2 + str3 + str4 + str5 + str6 + str7 + str8); ValidateArrowWrapper(8, udfWrapper); }
public void TestArrowUdfWrapper10() { var udfWrapper = new ArrowUdfWrapper < StringArray, StringArray, StringArray, StringArray, StringArray, StringArray, StringArray, StringArray, StringArray, StringArray, StringArray>( (str1, str2, str3, str4, str5, str6, str7, str8, str9, str10) => Concat(str1, str2, str3, str4, str5, str6, str7, str8, str9, str10)); ValidateArrowWrapper(10, udfWrapper); }
public void TestArrowUdfWrapper0() { var udfWrapper = new ArrowUdfWrapper <int>(() => 10); IArrowArray result = udfWrapper.Execute(0, null, null); Assert.IsType <Int32Array>(result); var intArray = (Int32Array)result; Assert.Equal(1, intArray.Length); Assert.Equal(10, intArray.Values[0]); }