This is an automated email from the ASF dual-hosted git repository.

jimin pushed a commit to branch 2.x
in repository https://gitbox.apache.org/repos/asf/incubator-seata.git


The following commit(s) were added to refs/heads/2.x by this push:
     new 8c72b89f05 test: improved test SqlServerInsertRecognizerTest (#7294)
8c72b89f05 is described below

commit 8c72b89f053f471c223df356a291f63d78b28e8f
Author: Monil <16ucs...@lnmiit.ac.in>
AuthorDate: Sun Apr 27 21:45:25 2025 -0700

    test: improved test SqlServerInsertRecognizerTest (#7294)
---
 changes/en-us/2.x.md                               |  1 +
 changes/zh-cn/2.x.md                               |  1 +
 .../sqlserver/SqlServerInsertRecognizerTest.java   | 23 ++++++++++++++--------
 3 files changed, 17 insertions(+), 8 deletions(-)

diff --git a/changes/en-us/2.x.md b/changes/en-us/2.x.md
index fe20f90888..c94ff20d80 100644
--- a/changes/en-us/2.x.md
+++ b/changes/en-us/2.x.md
@@ -57,6 +57,7 @@ Add changes here for all PR submitted to the 2.x branch.
 - [[#7255](https://github.com/apache/incubator-seata/pull/7255)] more unit 
tests for Discovery-Eureka
 - [[#7286](https://github.com/apache/incubator-seata/pull/7286)] Simplified 
complex test testMsgSerialize in RaftSyncMessageTest by separating it into two 
tests
 - [[#7287](https://github.com/apache/incubator-seata/pull/7287)] Refactored 
testGetErrorMsgWithValidCodeReturnsExpectedMsg to use parameterized unit testing
+- [[#7294](https://github.com/apache/incubator-seata/pull/7294)] improved test 
testGetInsertParamsValue in SqlServerInsertRecognizerTest by splitting and 
parameterizing
 - [[#7295](https://github.com/apache/incubator-seata/pull/7295)] updated 3 
tests in StringUtilsTest to use parameterized unit testing
 
 ### refactor:
diff --git a/changes/zh-cn/2.x.md b/changes/zh-cn/2.x.md
index 4a673d7b27..54be6c1466 100644
--- a/changes/zh-cn/2.x.md
+++ b/changes/zh-cn/2.x.md
@@ -56,6 +56,7 @@
 - [[#7255](https://github.com/apache/incubator-seata/pull/7255)] 
补充更多seata-discovery-eureka模块的单测提高覆盖率
 - [[#7286](https://github.com/apache/incubator-seata/pull/7286)] 重构了 
RaftSyncMessageTest 中的 testMsgSerialize 测试,通过拆分为两个独立测试以简化逻辑
 - [[#7287](https://github.com/apache/incubator-seata/pull/7287)] 重构了 CodeTest 
中的 testGetErrorMsgWithValidCodeReturnsExpectedMsg 测试,以简化并使用参数化单元测试。
+- [[#7294](https://github.com/apache/incubator-seata/pull/7294)] 重构了 
SqlServerInsertRecognizerTest 中的 testGetInsertParamsValue 测试,通过拆分并使用参数化单元测试进行改进
 - [[#7295](https://github.com/apache/incubator-seata/pull/7295)] 重构了 
StringUtilsTest 中的 3 个测试,改为使用参数化单元测试
 
 ### refactor:
diff --git 
a/sqlparser/seata-sqlparser-druid/src/test/java/org/apache/seata/sqlparser/druid/sqlserver/SqlServerInsertRecognizerTest.java
 
b/sqlparser/seata-sqlparser-druid/src/test/java/org/apache/seata/sqlparser/druid/sqlserver/SqlServerInsertRecognizerTest.java
index d47cb56791..b24c7fcdd6 100644
--- 
a/sqlparser/seata-sqlparser-druid/src/test/java/org/apache/seata/sqlparser/druid/sqlserver/SqlServerInsertRecognizerTest.java
+++ 
b/sqlparser/seata-sqlparser-druid/src/test/java/org/apache/seata/sqlparser/druid/sqlserver/SqlServerInsertRecognizerTest.java
@@ -19,6 +19,7 @@ package org.apache.seata.sqlparser.druid.sqlserver;
 import java.util.Arrays;
 import java.util.Collections;
 import java.util.List;
+import java.util.stream.Stream;
 
 import com.alibaba.druid.sql.ast.SQLStatement;
 import com.alibaba.druid.sql.ast.expr.SQLDateExpr;
@@ -31,6 +32,9 @@ import 
org.apache.seata.sqlparser.druid.AbstractRecognizerTest;
 import org.apache.seata.sqlparser.util.JdbcConstants;
 import org.junit.jupiter.api.Assertions;
 import org.junit.jupiter.api.Test;
+import org.junit.jupiter.params.ParameterizedTest;
+import org.junit.jupiter.params.provider.Arguments;
+import org.junit.jupiter.params.provider.MethodSource;
 
 /**
  * The type SqlServer insert recognizer test.
@@ -229,18 +233,21 @@ public class SqlServerInsertRecognizerTest extends 
AbstractRecognizerTest {
         Assertions.assertEquals(SQLType.INSERT, recognizer.getSQLType());
     }
 
-    @Test
-    public void testGetInsertParamsValue() {
-        String sql = "INSERT INTO t(a) VALUES (?)";
+    @ParameterizedTest
+    @MethodSource("provideSqlWithExplicitValues")
+    void testGetInsertParamsValueForExplicitValues(String sql, Object 
expectedValue) {
         SQLStatement ast = getSQLStatement(sql);
         SqlServerInsertRecognizer recognizer = new 
SqlServerInsertRecognizer(sql, ast);
-        Assertions.assertEquals("?", recognizer.getInsertParamsValue().get(0));
+        Assertions.assertEquals(expectedValue, 
recognizer.getInsertParamsValue().get(0));
+    }
 
-        String sql_2 = "INSERT INTO t(a) VALUES ()";
-        SQLStatement ast_2 = getSQLStatement(sql_2);
-        SqlServerInsertRecognizer recognizer_2 = new 
SqlServerInsertRecognizer(sql_2, ast_2);
-        Assertions.assertEquals("", 
recognizer_2.getInsertParamsValue().get(0));
+    static Stream<Arguments> provideSqlWithExplicitValues() {
+        return Stream.of(
+                Arguments.of("INSERT INTO t(a) VALUES (?)", "?"), 
Arguments.of("INSERT INTO t(a) VALUES ()", ""));
+    }
 
+    @Test
+    public void testGetInsertParamsValueWithDefaultValues() {
         String sql_3 = "INSERT INTO T1 DEFAULT VALUES";
         SQLStatement ast_3 = getSQLStatement(sql_3);
         SqlServerInsertRecognizer recognizer_3 = new 
SqlServerInsertRecognizer(sql_3, ast_3);


---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscr...@seata.apache.org
For additional commands, e-mail: notifications-h...@seata.apache.org

Reply via email to