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

duanzhengqiang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere.git


The following commit(s) were added to refs/heads/master by this push:
     new 1c56aad2fc7 add test cases (#28289)
1c56aad2fc7 is described below

commit 1c56aad2fc7ef49d1506de326fad19388c46f5a1
Author: Yunbo Ni <[email protected]>
AuthorDate: Mon Sep 4 17:49:29 2023 +0800

    add test cases (#28289)
    
    * feat: case expression test case
    
    * feat: collate test cases
    
    * feat: trim test cases
    
    * feat: spatial function test case
    
    * fix: function name test case
    
    * feat: date format function test case
    
    ---------
    
    Co-authored-by: Zhengqiang Duan <[email protected]>
---
 test/it/optimizer/src/test/resources/converter/select-expression.xml   | 3 +++
 .../optimizer/src/test/resources/converter/select-special-function.xml | 2 ++
 test/it/optimizer/src/test/resources/converter/select.xml              | 3 +++
 3 files changed, 8 insertions(+)

diff --git 
a/test/it/optimizer/src/test/resources/converter/select-expression.xml 
b/test/it/optimizer/src/test/resources/converter/select-expression.xml
index ed2fcc3affa..c414191201e 100644
--- a/test/it/optimizer/src/test/resources/converter/select-expression.xml
+++ b/test/it/optimizer/src/test/resources/converter/select-expression.xml
@@ -49,6 +49,9 @@
     <test-cases sql-case-id="select_where_with_predicate_with_in_subquery" 
expected-sql="SELECT * FROM &quot;t_order&quot; WHERE 
&quot;t_order&quot;.&quot;order_id&quot; NOT IN (SELECT &quot;order_id&quot; 
FROM &quot;t_order_item&quot; WHERE &quot;status&quot; &gt; 1)" 
db-types="PostgreSQL, openGauss" sql-case-types="LITERAL" />
     <test-cases sql-case-id="select_where_with_predicate_with_in_subquery" 
expected-sql="SELECT * FROM &quot;t_order&quot; WHERE 
&quot;t_order&quot;.&quot;order_id&quot; NOT IN (SELECT &quot;order_id&quot; 
FROM &quot;t_order_item&quot; WHERE &quot;status&quot; &gt; ?)" 
db-types="PostgreSQL, openGauss" sql-case-types="PLACEHOLDER" />
     <test-cases sql-case-id="select_where_with_simple_expr_with_collate" 
expected-sql="SELECT * FROM `t_order` WHERE `order_id` COLLATE 
'utf8mb4_0900_ai_ci'" db-types="MySQL" sql-case-types="LITERAL" />
+    <test-cases sql-case-id="select_with_case_expression" expected-sql="SELECT 
`t`.*, `o`.`item_id` AS `item_id`, CASE WHEN `t`.`status` = 'init' THEN 
u&amp;'\5df2\542f\7528' WHEN `t`.`status` = 'failed' THEN 
u&amp;'\5df2\505c\7528' ELSE 'NULL' END AS `stateName` FROM `t_order` AS `t` 
LEFT JOIN `t_order_item` AS `o` ON `o`.`order_id` = `t`.`order_id` WHERE 
`t`.`order_id` = 1000 LIMIT 1" db-types="MySQL,H2" />
+    <test-cases sql-case-id="select_with_collate_with_marker" 
expected-sql="SELECT * FROM `t_order` WHERE `order_id` COLLATE ?" 
db-types="MySQL" sql-case-types="PLACEHOLDER" />
+    <test-cases sql-case-id="select_with_collate_with_marker" 
expected-sql="SELECT * FROM `t_order` WHERE `order_id` COLLATE 'latin1_bin'" 
db-types="MySQL" sql-case-types="LITERAL" />
     <test-cases sql-case-id="select_where_with_simple_expr_with_row" 
expected-sql="SELECT * FROM `t_order` WHERE (?, `now`()) = (`order_id`, 
`status`)" db-types="MySQL" sql-case-types="PLACEHOLDER" />
     <test-cases sql-case-id="select_where_with_simple_expr_with_row" 
expected-sql="SELECT * FROM `t_order` WHERE ('abc', `now`()) = (`order_id`, 
`status`)" db-types="MySQL" sql-case-types="LITERAL" />
     <test-cases sql-case-id="select_where_with_simple_expr_with_not" 
expected-sql="SELECT * FROM `t_order` WHERE ! `t_order`.`order_id`" 
db-types="MySQL" />
diff --git 
a/test/it/optimizer/src/test/resources/converter/select-special-function.xml 
b/test/it/optimizer/src/test/resources/converter/select-special-function.xml
index ed4357793f0..38f417e54f2 100644
--- a/test/it/optimizer/src/test/resources/converter/select-special-function.xml
+++ b/test/it/optimizer/src/test/resources/converter/select-special-function.xml
@@ -18,5 +18,7 @@
 
 <sql-node-converter-test-cases>
     <test-cases sql-case-id="select_extract_function" expected-sql="SELECT 
EXTRACT(&quot;YEAR&quot; FROM CAST('2001-02-16 20:38:40' AS TIMESTAMP))" 
db-types="PostgreSQL,openGauss" />
+    <test-cases sql-case-id="select_with_trim_expr" expected-sql="SELECT 
TRIM(BOTH '#' FROM `name`) FROM `t_order`" db-types="MySQL" />
+    <test-cases sql-case-id="select_with_trim_expr_from_expr" 
expected-sql="SELECT TRIM(BOTH `remove_name` FROM `name`) FROM `t_order`" 
db-types="MySQL" />
     <test-cases sql-case-id="select_window_function" expected-sql="SELECT 
`order_id`, ROW_NUMBER() OVER () FROM `t_order`" db-types="MySQL" />
 </sql-node-converter-test-cases>
diff --git a/test/it/optimizer/src/test/resources/converter/select.xml 
b/test/it/optimizer/src/test/resources/converter/select.xml
index a17523123ca..e16ff8d319e 100644
--- a/test/it/optimizer/src/test/resources/converter/select.xml
+++ b/test/it/optimizer/src/test/resources/converter/select.xml
@@ -20,6 +20,9 @@
     <test-cases sql-case-id="select_string_constant_type_cast" 
expected-sql="SELECT CAST('1' AS INTEGER), CAST('2' AS DECIMAL)" 
dbtypes="openGauss,PostgreSQL" />
     <test-cases 
sql-case-id="select_with_database_name_and_schema_name_in_table" 
expected-sql="SELECT &quot;order_id&quot; FROM 
&quot;sharding_db&quot;.&quot;public&quot;.&quot;t_order&quot; WHERE 
&quot;user_id&quot; = ? AND &quot;order_id&quot; = ?" 
db-types="PostgreSQL,openGauss" sql-case-types="PLACEHOLDER" />
     <test-cases 
sql-case-id="select_with_database_name_and_schema_name_in_table" 
expected-sql="SELECT &quot;order_id&quot; FROM 
&quot;sharding_db&quot;.&quot;public&quot;.&quot;t_order&quot; WHERE 
&quot;user_id&quot; = 1 AND &quot;order_id&quot; = 1" 
db-types="PostgreSQL,openGauss" sql-case-types="LITERAL" />
+    <test-cases sql-case-id="select_with_spatial_function" 
expected-sql="SELECT * FROM `t_order` WHERE 
`ST_DISTANCE_SPHERE`(`POINT`(113.358772, 23.1273723), `POINT`(`user_id`, 
`order_id`)) &lt;&gt; 0" db-types="MySQL" />
+    <test-cases sql-case-id="select_with_function_name" expected-sql="SELECT 
CURRENT_TIMESTAMP" db-types="MySQL" />
+    <test-cases sql-case-id="select_with_date_format_function" 
expected-sql="SELECT * FROM `t_order` WHERE `DATE_FORMAT`(CURRENT_DATE, 
'%Y-%m-%d') = '2019-12-18'" db-types="MySQL" />
     <test-cases sql-case-id="select_with_schema_name_in_shorthand_projection" 
expected-sql="SELECT `sharding_db`.`t_order`.* FROM `t_order` WHERE `user_id` = 
? AND `order_id` = ?" db-types="MySQL" sql-case-types="PLACEHOLDER" />
     <test-cases sql-case-id="select_with_schema_name_in_shorthand_projection" 
expected-sql="SELECT `sharding_db`.`t_order`.* FROM `t_order` WHERE `user_id` = 
1 AND `order_id` = 1" db-types="MySQL" sql-case-types="LITERAL" />
     <test-cases sql-case-id="select_with_schema_name_in_column_projection" 
expected-sql="SELECT `sharding_db`.`t_order`.`order_id` FROM `t_order` WHERE 
`user_id` = ? AND `order_id` = ?" db-types="MySQL" sql-case-types="PLACEHOLDER" 
/>

Reply via email to