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 <[email protected]>
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");
}
}