This is an automated email from the ASF dual-hosted git repository. dockerzhang pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/inlong.git
The following commit(s) were added to refs/heads/master by this push: new 9e443cbfaa [INLONG-11112][SDK] Transform TRUNCATE() function add pgsql name (#11113) 9e443cbfaa is described below commit 9e443cbfaa17c085d0824d9d8f912b7ab2a96c03 Author: emptyOVO <118812562+empty...@users.noreply.github.com> AuthorDate: Wed Sep 18 09:57:05 2024 +0800 [INLONG-11112][SDK] Transform TRUNCATE() function add pgsql name (#11113) --- .../process/function/TruncateFunction.java | 2 +- .../function/arithmetic/TestTruncateFunction.java | 24 ++++++++++++++++++---- 2 files changed, 21 insertions(+), 5 deletions(-) diff --git a/inlong-sdk/transform-sdk/src/main/java/org/apache/inlong/sdk/transform/process/function/TruncateFunction.java b/inlong-sdk/transform-sdk/src/main/java/org/apache/inlong/sdk/transform/process/function/TruncateFunction.java index 8267efff55..347f672352 100644 --- a/inlong-sdk/transform-sdk/src/main/java/org/apache/inlong/sdk/transform/process/function/TruncateFunction.java +++ b/inlong-sdk/transform-sdk/src/main/java/org/apache/inlong/sdk/transform/process/function/TruncateFunction.java @@ -39,7 +39,7 @@ import java.util.List; * for example: truncate(42.324, 2)--return 42.32 * truncate(42.324)--return 42.0 */ -@TransformFunction(names = {"truncate"}) +@TransformFunction(names = {"truncate", "trunc"}) public class TruncateFunction implements ValueParser { private ValueParser bigDecimalParser; diff --git a/inlong-sdk/transform-sdk/src/test/java/org/apache/inlong/sdk/transform/process/function/arithmetic/TestTruncateFunction.java b/inlong-sdk/transform-sdk/src/test/java/org/apache/inlong/sdk/transform/process/function/arithmetic/TestTruncateFunction.java index ddc3cabf7c..35138ed508 100644 --- a/inlong-sdk/transform-sdk/src/test/java/org/apache/inlong/sdk/transform/process/function/arithmetic/TestTruncateFunction.java +++ b/inlong-sdk/transform-sdk/src/test/java/org/apache/inlong/sdk/transform/process/function/arithmetic/TestTruncateFunction.java @@ -52,15 +52,31 @@ public class TestTruncateFunction extends AbstractFunctionArithmeticTestBase { Assert.assertEquals(1, output3.size()); Assert.assertEquals(output3.get(0), "result=12000"); - String transformSql2 = "select truncate(numeric1) from source"; + String transformSql2 = "select trunc(numeric1,numeric2) from source"; TransformConfig config2 = new TransformConfig(transformSql2); TransformProcessor<String, String> processor2 = TransformProcessor .create(config2, SourceDecoderFactory.createCsvDecoder(csvSource), SinkEncoderFactory.createKvEncoder(kvSink)); - // case4: truncate(12345) - List<String> output4 = processor2.transform("12345.6789|-3|6|8"); + // case1: trunc(42.324, 2) + List<String> output4 = processor2.transform("42.324|2|6|8"); Assert.assertEquals(1, output4.size()); - Assert.assertEquals(output4.get(0), "result=12345"); + Assert.assertEquals(output4.get(0), "result=42.32"); + + // case2: trunc(42.324, -1) + List<String> output5 = processor2.transform("42.324|-1|6|8"); + Assert.assertEquals(1, output5.size()); + Assert.assertEquals(output5.get(0), "result=40"); + + String transformSql3 = "select truncate(numeric1) from source"; + TransformConfig config3 = new TransformConfig(transformSql3); + TransformProcessor<String, String> processor3 = TransformProcessor + .create(config3, SourceDecoderFactory.createCsvDecoder(csvSource), + SinkEncoderFactory.createKvEncoder(kvSink)); + + // case4: truncate(12345.6789) + List<String> output6 = processor3.transform("12345.6789|-3|6|8"); + Assert.assertEquals(1, output6.size()); + Assert.assertEquals(output6.get(0), "result=12345"); } }