From 55280f46755b92527dd6099a1298d3dc2644f7a5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=AB=98=E9=93=81?= Date: Sat, 12 Mar 2016 16:16:59 +0800 Subject: [PATCH] add sql parser testcases --- .../ast/statement/SQLAlterTableAddIndex.java | 11 +++++----- .../druid/sql/parser/SQLStatementParser.java | 6 ++---- .../sql/visitor/SQLASTOutputVisitor.java | 9 ++++++--- .../druid/bvt/sql/mysql/InsertSyntaxTest.java | 20 +++++++++++++------ .../druid/bvt/sql/mysql/MySql57Test.java | 8 ++++++-- .../bvt/sql/mysql/MySqlAlterDbTest0.java | 5 +++-- .../sql/mysql/MySqlAlterTableAddIndex_0.java | 7 +++++-- .../sql/mysql/MySqlAlterTableAddIndex_1.java | 7 +++++-- .../mysql/MySqlAlterTableAddPrimaryKey.java | 8 ++++++-- .../mysql/MySqlAlterTableAddPrimaryKey_1.java | 7 +++++-- ...lAlterTableAlterColumnDropDefaultTest.java | 7 +++++-- ...qlAlterTableAlterColumnSetDefaultTest.java | 7 +++++-- .../sql/mysql/MySqlAlterTableDisableKeys.java | 6 ++++-- .../sql/mysql/MySqlAlterTableDropIndex_0.java | 7 +++++-- .../sql/mysql/MySqlAlterTableDropIndex_1.java | 8 ++++++-- .../bvt/sql/mysql/MySqlAlterTableDropKey.java | 7 +++++-- .../mysql/MySqlAlterTableDropPrimaryKey.java | 10 ++++++---- .../sql/mysql/MySqlAlterTableDrop_Test.java | 7 +++++-- .../sql/mysql/MySqlAlterTableEnableKeys.java | 10 ++++++---- .../sql/mysql/MySqlAlterTableTest_addFk.java | 8 ++++++-- .../MySqlAlterTableTest_drop_constraint.java | 6 ++++-- .../bvt/sql/mysql/MySqlCreateUserTest_1.java | 5 +++-- .../bvt/sql/mysql/MySqlCreateUserTest_2.java | 5 +++-- .../bvt/sql/mysql/MySqlCreateUserTest_3.java | 6 ++++-- .../bvt/sql/mysql/MySqlCreateUserTest_4.java | 6 ++++-- .../odps/OdpsAlterTableDisableLifecycle.java | 6 ++++++ .../odps/OdpsAlterTableEnableLifecycle.java | 6 ++++++ .../druid/bvt/sql/odps/OdpsSetLabelTest.java | 5 +++-- .../bvt/sql/odps/OdpsShowTablesTest0.java | 10 ++++++---- .../sql/postgresql/PGCreateTableTest_4.java | 20 ++++++++++++++++--- .../sql/postgresql/PGCreateTableTest_5.java | 14 ++++++++++--- .../bvt/sql/postgresql/PGInsertTest5.java | 4 ++-- .../bvt/sql/postgresql/PGSelectTest23.java | 13 +++++++++--- .../sqlserver/SQLServerCreateTableTest_3.java | 19 ++++++++++++++++-- .../bvt/sql/sqlserver/SQLServerTopTest.java | 12 +++++------ 35 files changed, 211 insertions(+), 91 deletions(-) diff --git a/src/main/java/com/alibaba/druid/sql/ast/statement/SQLAlterTableAddIndex.java b/src/main/java/com/alibaba/druid/sql/ast/statement/SQLAlterTableAddIndex.java index 332fa4af94..ac61be8f22 100644 --- a/src/main/java/com/alibaba/druid/sql/ast/statement/SQLAlterTableAddIndex.java +++ b/src/main/java/com/alibaba/druid/sql/ast/statement/SQLAlterTableAddIndex.java @@ -20,7 +20,6 @@ import java.util.List; import com.alibaba.druid.sql.ast.SQLName; import com.alibaba.druid.sql.ast.SQLObjectImpl; -import com.alibaba.druid.sql.parser.Token; import com.alibaba.druid.sql.visitor.SQLASTVisitor; public class SQLAlterTableAddIndex extends SQLObjectImpl implements SQLAlterTableItem { @@ -35,7 +34,7 @@ public class SQLAlterTableAddIndex extends SQLObjectImpl implements SQLAlterTabl private String using; - private String keyOrIndex = Token.INDEX.name; + private boolean key = false; @Override protected void accept0(SQLASTVisitor visitor) { @@ -89,11 +88,11 @@ public class SQLAlterTableAddIndex extends SQLObjectImpl implements SQLAlterTabl this.using = using; } - public String getKeyOrIndex() { - return keyOrIndex; + public boolean isKey() { + return key; } - public void setKeyOrIndex(String keyOrIndex) { - this.keyOrIndex = keyOrIndex; + public void setKey(boolean key) { + this.key = key; } } diff --git a/src/main/java/com/alibaba/druid/sql/parser/SQLStatementParser.java b/src/main/java/com/alibaba/druid/sql/parser/SQLStatementParser.java index e63c9e4b07..89de536de4 100644 --- a/src/main/java/com/alibaba/druid/sql/parser/SQLStatementParser.java +++ b/src/main/java/com/alibaba/druid/sql/parser/SQLStatementParser.java @@ -1986,18 +1986,16 @@ public class SQLStatementParser extends SQLParser { item.setUnique(true); lexer.nextToken(); if (lexer.token() == Token.INDEX) { - item.setKeyOrIndex(Token.INDEX.name); lexer.nextToken(); } else if (lexer.token() == Token.KEY) { - item.setKeyOrIndex(Token.KEY.name); + item.setKey(true); lexer.nextToken(); } } else { if (lexer.token() == Token.INDEX) { - item.setKeyOrIndex(Token.INDEX.name); accept(Token.INDEX); } else if (lexer.token() == Token.KEY) { - item.setKeyOrIndex(Token.KEY.name); + item.setKey(true); accept(Token.KEY); } } diff --git a/src/main/java/com/alibaba/druid/sql/visitor/SQLASTOutputVisitor.java b/src/main/java/com/alibaba/druid/sql/visitor/SQLASTOutputVisitor.java index 02de4511a1..ee5b327a89 100644 --- a/src/main/java/com/alibaba/druid/sql/visitor/SQLASTOutputVisitor.java +++ b/src/main/java/com/alibaba/druid/sql/visitor/SQLASTOutputVisitor.java @@ -2152,9 +2152,12 @@ public class SQLASTOutputVisitor extends SQLASTVisitorAdapter implements Printab print0(ucase ? "UNIQUE " : "unique "); } - print0(x.getKeyOrIndex()); - print(' '); - + if (x.isKey()) { + print0(ucase ? "KEY " : "key "); + } else { + print0(ucase ? "INDEX " : "index "); + } + if (x.getName() != null) { x.getName().accept(this); print(' '); diff --git a/src/test/java/com/alibaba/druid/bvt/sql/mysql/InsertSyntaxTest.java b/src/test/java/com/alibaba/druid/bvt/sql/mysql/InsertSyntaxTest.java index 3b5d6a690a..4566d354f6 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/mysql/InsertSyntaxTest.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/mysql/InsertSyntaxTest.java @@ -18,13 +18,15 @@ package com.alibaba.druid.bvt.sql.mysql; import java.util.List; import org.junit.Assert; -import junit.framework.TestCase; +import com.alibaba.druid.sql.SQLUtils; import com.alibaba.druid.sql.ast.SQLStatement; import com.alibaba.druid.sql.dialect.mysql.parser.MySqlStatementParser; import com.alibaba.druid.sql.dialect.mysql.visitor.MySqlOutputVisitor; import com.alibaba.druid.sql.parser.SQLStatementParser; +import junit.framework.TestCase; + public class InsertSyntaxTest extends TestCase { public void test_0() throws Exception { @@ -92,10 +94,13 @@ public class InsertSyntaxTest extends TestCase { SQLStatementParser parser = new MySqlStatementParser(sql); List stmtList = parser.parseStatementList(); - String text = output(stmtList); + SQLStatement stmt = stmtList.get(0); - Assert.assertEquals("INSERT LOW_PRIORITY DELAYED HIGH_PRIORITY IGNORE INTO tbl_name (a, b, c)\nVALUES (1, 2, 3);", - text); + Assert.assertEquals("INSERT LOW_PRIORITY DELAYED HIGH_PRIORITY IGNORE INTO tbl_name (a, b, c)\nVALUES (1, 2, 3)", + SQLUtils.toMySqlString(stmt)); + + Assert.assertEquals("insert low_priority delayed high_priority ignore into tbl_name (a, b, c)\nvalues (1, 2, 3)", + SQLUtils.toMySqlString(stmt, SQLUtils.DEFAULT_LCASE_FORMAT_OPTION)); } public void test_6() throws Exception { @@ -104,11 +109,14 @@ public class InsertSyntaxTest extends TestCase { SQLStatementParser parser = new MySqlStatementParser(sql); List stmtList = parser.parseStatementList(); - String text = output(stmtList); + SQLStatement stmt = stmtList.get(0); Assert.assertEquals("INSERT INTO tbl_name (a, b, c)" + // "\nVALUES (1, 2, 3)" + // - "\nON DUPLICATE KEY UPDATE c = c + 1;", text); + "\nON DUPLICATE KEY UPDATE c = c + 1", SQLUtils.toMySqlString(stmt)); + Assert.assertEquals("insert into tbl_name (a, b, c)" + // + "\nvalues (1, 2, 3)" + // + "\non duplicate key update c = c + 1", SQLUtils.toMySqlString(stmt, SQLUtils.DEFAULT_LCASE_FORMAT_OPTION)); } private String output(List stmtList) { diff --git a/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySql57Test.java b/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySql57Test.java index 977f317531..9ed9943d32 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySql57Test.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySql57Test.java @@ -16,9 +16,13 @@ public class MySql57Test extends TestCase { MySqlStatementParser parser = new MySqlStatementParser(sql); SQLStatement stmt = parser.parseStatementList().get(0); parser.match(Token.EOF); - String output = SQLUtils.toMySqlString(stmt); + Assert.assertEquals("ALTER TABLE t1" // + "\n\tALGORITHM = INPLACE," // - + "\n\tCHANGE COLUMN c1 c1 VARCHAR(255)", output); + + "\n\tCHANGE COLUMN c1 c1 VARCHAR(255)", SQLUtils.toMySqlString(stmt)); + + Assert.assertEquals("alter table t1" // + + "\n\tALGORITHM = INPLACE," // + + "\n\tchange column c1 c1 VARCHAR(255)", SQLUtils.toMySqlString(stmt, SQLUtils.DEFAULT_LCASE_FORMAT_OPTION)); } } diff --git a/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterDbTest0.java b/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterDbTest0.java index 47e30c7619..13033f473f 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterDbTest0.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterDbTest0.java @@ -31,8 +31,9 @@ public class MySqlAlterDbTest0 extends TestCase { MySqlStatementParser parser = new MySqlStatementParser(sql); SQLStatement stmt = parser.parseStatementList().get(0); parser.match(Token.EOF); - String output = SQLUtils.toMySqlString(stmt); - Assert.assertEquals("ALTER DATABASE `#mysql50#a-b-c` UPGRADE DATA DIRECTORY NAME", output); + + Assert.assertEquals("ALTER DATABASE `#mysql50#a-b-c` UPGRADE DATA DIRECTORY NAME", SQLUtils.toMySqlString(stmt)); + Assert.assertEquals("alter database `#mysql50#a-b-c` upgrade data directory name", SQLUtils.toMySqlString(stmt, SQLUtils.DEFAULT_LCASE_FORMAT_OPTION)); } } diff --git a/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableAddIndex_0.java b/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableAddIndex_0.java index dce049be1a..6a8cdffc67 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableAddIndex_0.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableAddIndex_0.java @@ -31,9 +31,12 @@ public class MySqlAlterTableAddIndex_0 extends TestCase { MySqlStatementParser parser = new MySqlStatementParser(sql); SQLStatement stmt = parser.parseStatementList().get(0); parser.match(Token.EOF); - String output = SQLUtils.toMySqlString(stmt); + Assert.assertEquals("ALTER TABLE `test`.`tb1`" + // - "\n\tADD INDEX `ix` (`f2` ASC)", output); + "\n\tADD INDEX `ix` (`f2` ASC)", SQLUtils.toMySqlString(stmt)); + + Assert.assertEquals("alter table `test`.`tb1`" + // + "\n\tadd index `ix` (`f2` asc)", SQLUtils.toMySqlString(stmt, SQLUtils.DEFAULT_LCASE_FORMAT_OPTION)); } } diff --git a/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableAddIndex_1.java b/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableAddIndex_1.java index dc92a871b6..15152e8fd1 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableAddIndex_1.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableAddIndex_1.java @@ -30,9 +30,12 @@ public class MySqlAlterTableAddIndex_1 extends TestCase { MySqlStatementParser parser = new MySqlStatementParser(sql); SQLStatement stmt = parser.parseStatementList().get(0); parser.match(Token.EOF); - String output = SQLUtils.toMySqlString(stmt); + Assert.assertEquals("ALTER TABLE `test`.`tb1`" + // - "\n\tADD UNIQUE INDEX `ix2` (`fid` ASC)", output); + "\n\tADD UNIQUE INDEX `ix2` (`fid` ASC)", SQLUtils.toMySqlString(stmt)); + + Assert.assertEquals("alter table `test`.`tb1`" + // + "\n\tadd unique index `ix2` (`fid` asc)", SQLUtils.toMySqlString(stmt, SQLUtils.DEFAULT_LCASE_FORMAT_OPTION)); } } diff --git a/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableAddPrimaryKey.java b/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableAddPrimaryKey.java index 541ce84896..62f846b1da 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableAddPrimaryKey.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableAddPrimaryKey.java @@ -30,10 +30,14 @@ public class MySqlAlterTableAddPrimaryKey extends TestCase { MySqlStatementParser parser = new MySqlStatementParser(sql); SQLStatement stmt = parser.parseStatementList().get(0); parser.match(Token.EOF); - String output = SQLUtils.toMySqlString(stmt); + Assert.assertEquals("ALTER TABLE `test`.`tb1`" + // "\n\tCHANGE COLUMN `fid` `fid` INT(11) NOT NULL NULL,\n\t" + // - "ADD PRIMARY KEY (`fid`)", output); + "ADD PRIMARY KEY (`fid`)", SQLUtils.toMySqlString(stmt)); + + Assert.assertEquals("alter table `test`.`tb1`" + // + "\n\tchange column `fid` `fid` INT(11) not null null,\n\t" + // + "add primary key (`fid`)", SQLUtils.toMySqlString(stmt, SQLUtils.DEFAULT_LCASE_FORMAT_OPTION)); } } diff --git a/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableAddPrimaryKey_1.java b/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableAddPrimaryKey_1.java index 109a967b9b..0c4bd64d3b 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableAddPrimaryKey_1.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableAddPrimaryKey_1.java @@ -31,9 +31,12 @@ public class MySqlAlterTableAddPrimaryKey_1 extends TestCase { MySqlStatementParser parser = new MySqlStatementParser(sql); SQLStatement stmt = parser.parseStatementList().get(0); parser.match(Token.EOF); - String output = SQLUtils.toMySqlString(stmt); + Assert.assertEquals("ALTER TABLE tabelname" + // - "\n\tADD CONSTRAINT mYconstraint PRIMARY KEY (id)", output); + "\n\tADD CONSTRAINT mYconstraint PRIMARY KEY (id)", SQLUtils.toMySqlString(stmt)); + + Assert.assertEquals("alter table tabelname" + // + "\n\tadd constraint mYconstraint primary key (id)", SQLUtils.toMySqlString(stmt, SQLUtils.DEFAULT_LCASE_FORMAT_OPTION)); } } diff --git a/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableAlterColumnDropDefaultTest.java b/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableAlterColumnDropDefaultTest.java index f052e0a695..5e3f9247cb 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableAlterColumnDropDefaultTest.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableAlterColumnDropDefaultTest.java @@ -31,9 +31,12 @@ public class MySqlAlterTableAlterColumnDropDefaultTest extends TestCase { MySqlStatementParser parser = new MySqlStatementParser(sql); SQLStatement stmt = parser.parseStatementList().get(0); parser.match(Token.EOF); - String output = SQLUtils.toMySqlString(stmt); + Assert.assertEquals("ALTER TABLE tabelname" + // - "\n\tALTER COLUMN operateVersion DROP DEFAULT", output); + "\n\tALTER COLUMN operateVersion DROP DEFAULT", SQLUtils.toMySqlString(stmt)); + + Assert.assertEquals("alter table tabelname" + // + "\n\talter column operateVersion drop default", SQLUtils.toMySqlString(stmt, SQLUtils.DEFAULT_LCASE_FORMAT_OPTION)); } } diff --git a/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableAlterColumnSetDefaultTest.java b/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableAlterColumnSetDefaultTest.java index c23fad5b37..f59e714879 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableAlterColumnSetDefaultTest.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableAlterColumnSetDefaultTest.java @@ -31,9 +31,12 @@ public class MySqlAlterTableAlterColumnSetDefaultTest extends TestCase { MySqlStatementParser parser = new MySqlStatementParser(sql); SQLStatement stmt = parser.parseStatementList().get(0); parser.match(Token.EOF); - String output = SQLUtils.toMySqlString(stmt); + Assert.assertEquals("ALTER TABLE tabelname" + // - "\n\tALTER COLUMN operateVersion SET DEFAULT 0", output); + "\n\tALTER COLUMN operateVersion SET DEFAULT 0", SQLUtils.toMySqlString(stmt)); + + Assert.assertEquals("alter table tabelname" + // + "\n\talter column operateVersion set default 0", SQLUtils.toMySqlString(stmt, SQLUtils.DEFAULT_LCASE_FORMAT_OPTION)); } } diff --git a/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableDisableKeys.java b/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableDisableKeys.java index ab8f531506..1af076e668 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableDisableKeys.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableDisableKeys.java @@ -41,10 +41,12 @@ public class MySqlAlterTableDisableKeys extends TestCase { System.out.println("coditions : " + visitor.getConditions()); System.out.println("orderBy : " + visitor.getOrderByColumns()); - String output = SQLUtils.toMySqlString(stmt); Assert.assertEquals("ALTER TABLE tableName" + // - "\n\tDISABLE KEYS", output); + "\n\tDISABLE KEYS", SQLUtils.toMySqlString(stmt)); + Assert.assertEquals("alter table tableName" + // + "\n\tdisable keys", SQLUtils.toMySqlString(stmt, SQLUtils.DEFAULT_LCASE_FORMAT_OPTION)); + Assert.assertEquals(1, visitor.getTables().size()); Assert.assertEquals(0, visitor.getColumns().size()); } diff --git a/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableDropIndex_0.java b/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableDropIndex_0.java index 80b8de95c8..8ebf485bb1 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableDropIndex_0.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableDropIndex_0.java @@ -30,9 +30,12 @@ public class MySqlAlterTableDropIndex_0 extends TestCase { MySqlStatementParser parser = new MySqlStatementParser(sql); SQLStatement stmt = parser.parseStatementList().get(0); parser.match(Token.EOF); - String output = SQLUtils.toMySqlString(stmt); + Assert.assertEquals("ALTER TABLE `test`.`tb1`" + // - "\n\tDROP INDEX `ix`", output); + "\n\tDROP INDEX `ix`", SQLUtils.toMySqlString(stmt)); + + Assert.assertEquals("alter table `test`.`tb1`" + // + "\n\tdrop index `ix`", SQLUtils.toMySqlString(stmt, SQLUtils.DEFAULT_LCASE_FORMAT_OPTION)); } } diff --git a/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableDropIndex_1.java b/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableDropIndex_1.java index 2bd9e7a80f..9d4b709d7c 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableDropIndex_1.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableDropIndex_1.java @@ -31,10 +31,14 @@ public class MySqlAlterTableDropIndex_1 extends TestCase { MySqlStatementParser parser = new MySqlStatementParser(sql); SQLStatement stmt = parser.parseStatementList().get(0); parser.match(Token.EOF); - String output = SQLUtils.toMySqlString(stmt); + Assert.assertEquals("ALTER TABLE `test`.`tb1`" + // "\n\tDROP INDEX `ix`," + // - "\n\tDROP INDEX `ix2`", output); + "\n\tDROP INDEX `ix2`", SQLUtils.toMySqlString(stmt)); + + Assert.assertEquals("alter table `test`.`tb1`" + // + "\n\tdrop index `ix`," + // + "\n\tdrop index `ix2`", SQLUtils.toMySqlString(stmt, SQLUtils.DEFAULT_LCASE_FORMAT_OPTION)); } } diff --git a/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableDropKey.java b/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableDropKey.java index a027ccd2e4..52a01acf0a 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableDropKey.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableDropKey.java @@ -31,9 +31,12 @@ public class MySqlAlterTableDropKey extends TestCase { MySqlStatementParser parser = new MySqlStatementParser(sql); SQLStatement stmt = parser.parseStatementList().get(0); parser.match(Token.EOF); - String output = SQLUtils.toMySqlString(stmt); + Assert.assertEquals("ALTER TABLE t6" + // - "\n\tDROP KEY v", output); + "\n\tDROP KEY v", SQLUtils.toMySqlString(stmt)); + + Assert.assertEquals("alter table t6" + // + "\n\tdrop key v", SQLUtils.toMySqlString(stmt, SQLUtils.DEFAULT_LCASE_FORMAT_OPTION)); } } diff --git a/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableDropPrimaryKey.java b/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableDropPrimaryKey.java index 1fdca93b6f..6c3c238883 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableDropPrimaryKey.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableDropPrimaryKey.java @@ -16,14 +16,14 @@ package com.alibaba.druid.bvt.sql.mysql; import org.junit.Assert; -import junit.framework.TestCase; import com.alibaba.druid.sql.SQLUtils; import com.alibaba.druid.sql.ast.SQLStatement; import com.alibaba.druid.sql.dialect.mysql.parser.MySqlStatementParser; import com.alibaba.druid.sql.dialect.mysql.visitor.MySqlSchemaStatVisitor; import com.alibaba.druid.sql.parser.Token; -import com.alibaba.druid.stat.TableStat.Column; + +import junit.framework.TestCase; public class MySqlAlterTableDropPrimaryKey extends TestCase { @@ -41,9 +41,11 @@ public class MySqlAlterTableDropPrimaryKey extends TestCase { System.out.println("coditions : " + visitor.getConditions()); System.out.println("orderBy : " + visitor.getOrderByColumns()); - String output = SQLUtils.toMySqlString(stmt); Assert.assertEquals("ALTER TABLE tableName" + // - "\n\tDROP PRIMARY KEY", output); + "\n\tDROP PRIMARY KEY", SQLUtils.toMySqlString(stmt)); + + Assert.assertEquals("alter table tableName" + // + "\n\tdrop primary key", SQLUtils.toMySqlString(stmt, SQLUtils.DEFAULT_LCASE_FORMAT_OPTION)); Assert.assertEquals(1, visitor.getTables().size()); Assert.assertEquals(0, visitor.getColumns().size()); diff --git a/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableDrop_Test.java b/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableDrop_Test.java index f1635d49ce..6135c7cd96 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableDrop_Test.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableDrop_Test.java @@ -31,9 +31,12 @@ public class MySqlAlterTableDrop_Test extends TestCase { MySqlStatementParser parser = new MySqlStatementParser(sql); SQLStatement stmt = parser.parseStatementList().get(0); parser.match(Token.EOF); - String output = SQLUtils.toMySqlString(stmt); + Assert.assertEquals("ALTER TABLE `rules`" // - + "\n\tDROP COLUMN `enabled`", output); + + "\n\tDROP COLUMN `enabled`", SQLUtils.toMySqlString(stmt)); + + Assert.assertEquals("alter table `rules`" // + + "\n\tdrop column `enabled`", SQLUtils.toMySqlString(stmt, SQLUtils.DEFAULT_LCASE_FORMAT_OPTION)); } } diff --git a/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableEnableKeys.java b/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableEnableKeys.java index 3f50686b19..cdd9edd424 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableEnableKeys.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableEnableKeys.java @@ -16,14 +16,14 @@ package com.alibaba.druid.bvt.sql.mysql; import org.junit.Assert; -import junit.framework.TestCase; import com.alibaba.druid.sql.SQLUtils; import com.alibaba.druid.sql.ast.SQLStatement; import com.alibaba.druid.sql.dialect.mysql.parser.MySqlStatementParser; import com.alibaba.druid.sql.dialect.mysql.visitor.MySqlSchemaStatVisitor; import com.alibaba.druid.sql.parser.Token; -import com.alibaba.druid.stat.TableStat.Column; + +import junit.framework.TestCase; public class MySqlAlterTableEnableKeys extends TestCase { @@ -41,9 +41,11 @@ public class MySqlAlterTableEnableKeys extends TestCase { System.out.println("coditions : " + visitor.getConditions()); System.out.println("orderBy : " + visitor.getOrderByColumns()); - String output = SQLUtils.toMySqlString(stmt); Assert.assertEquals("ALTER TABLE tableName" + // - "\n\tENABLE KEYS", output); + "\n\tENABLE KEYS", SQLUtils.toMySqlString(stmt)); + + Assert.assertEquals("alter table tableName" + // + "\n\tenable keys", SQLUtils.toMySqlString(stmt, SQLUtils.DEFAULT_LCASE_FORMAT_OPTION)); Assert.assertEquals(1, visitor.getTables().size()); Assert.assertEquals(0, visitor.getColumns().size()); diff --git a/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableTest_addFk.java b/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableTest_addFk.java index e9384437e0..94d496bbc7 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableTest_addFk.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableTest_addFk.java @@ -42,11 +42,15 @@ public class MySqlAlterTableTest_addFk extends TestCase { System.out.println("coditions : " + visitor.getConditions()); System.out.println("orderBy : " + visitor.getOrderByColumns()); - String output = SQLUtils.toMySqlString(stmt); Assert.assertEquals("ALTER TABLE Test2" + // "\n\tADD INDEX FK4CF5DC0F5DD7C31 (test1_name)," + // "\n\tADD CONSTRAINT FK4CF5DC0F5DD7C31 FOREIGN KEY (test1_name) REFERENCES Test1 (name)", - output); + SQLUtils.toMySqlString(stmt)); + + Assert.assertEquals("alter table Test2" + // + "\n\tadd index FK4CF5DC0F5DD7C31 (test1_name)," + // + "\n\tadd constraint FK4CF5DC0F5DD7C31 foreign key (test1_name) references Test1 (name)", + SQLUtils.toMySqlString(stmt, SQLUtils.DEFAULT_LCASE_FORMAT_OPTION)); Assert.assertEquals(2, visitor.getTables().size()); Assert.assertEquals(2, visitor.getColumns().size()); diff --git a/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableTest_drop_constraint.java b/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableTest_drop_constraint.java index 8d7d4b09d5..52b4f5c0f5 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableTest_drop_constraint.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlAlterTableTest_drop_constraint.java @@ -41,10 +41,12 @@ public class MySqlAlterTableTest_drop_constraint extends TestCase { System.out.println("coditions : " + visitor.getConditions()); System.out.println("orderBy : " + visitor.getOrderByColumns()); - String output = SQLUtils.toMySqlString(stmt); Assert.assertEquals("ALTER TABLE TUSER" + // - "\n\tDROP CONSTRAINT UK_084c17821a8f47e8b31fbb126b6", output); + "\n\tDROP CONSTRAINT UK_084c17821a8f47e8b31fbb126b6", SQLUtils.toMySqlString(stmt)); + Assert.assertEquals("alter table TUSER" + // + "\n\tdrop constraint UK_084c17821a8f47e8b31fbb126b6", SQLUtils.toMySqlString(stmt, SQLUtils.DEFAULT_LCASE_FORMAT_OPTION)); + Assert.assertEquals(1, visitor.getTables().size()); Assert.assertEquals(0, visitor.getColumns().size()); } diff --git a/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlCreateUserTest_1.java b/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlCreateUserTest_1.java index d2001f13a4..e5c6c97698 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlCreateUserTest_1.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlCreateUserTest_1.java @@ -40,9 +40,10 @@ public class MySqlCreateUserTest_1 extends MysqlTest { MySqlSchemaStatVisitor visitor = new MySqlSchemaStatVisitor(); stmt.accept(visitor); - String output = SQLUtils.toMySqlString(stmt); Assert.assertEquals("CREATE USER 'jeffrey'@'localhost'", // - output); + SQLUtils.toMySqlString(stmt)); + Assert.assertEquals("create user 'jeffrey'@'localhost'", // + SQLUtils.toMySqlString(stmt, SQLUtils.DEFAULT_LCASE_FORMAT_OPTION)); System.out.println("Tables : " + visitor.getTables()); System.out.println("fields : " + visitor.getColumns()); diff --git a/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlCreateUserTest_2.java b/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlCreateUserTest_2.java index fb6e3dda2d..23c82813fc 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlCreateUserTest_2.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlCreateUserTest_2.java @@ -40,9 +40,10 @@ public class MySqlCreateUserTest_2 extends MysqlTest { MySqlSchemaStatVisitor visitor = new MySqlSchemaStatVisitor(); stmt.accept(visitor); - String output = SQLUtils.toMySqlString(stmt); Assert.assertEquals("CREATE USER 'jeffrey'@'localhost' IDENTIFIED BY 'mypass'", // - output); + SQLUtils.toMySqlString(stmt)); + Assert.assertEquals("create user 'jeffrey'@'localhost' identified by 'mypass'", // + SQLUtils.toMySqlString(stmt, SQLUtils.DEFAULT_LCASE_FORMAT_OPTION)); System.out.println("Tables : " + visitor.getTables()); System.out.println("fields : " + visitor.getColumns()); diff --git a/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlCreateUserTest_3.java b/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlCreateUserTest_3.java index 53e375a61f..bb7d30f16f 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlCreateUserTest_3.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlCreateUserTest_3.java @@ -41,9 +41,11 @@ public class MySqlCreateUserTest_3 extends MysqlTest { MySqlSchemaStatVisitor visitor = new MySqlSchemaStatVisitor(); stmt.accept(visitor); - String output = SQLUtils.toMySqlString(stmt); Assert.assertEquals("CREATE USER 'jeffrey'@'localhost' IDENTIFIED BY PASSWORD '*90E462C37378CED12064BB3388827D2BA3A9B689'", // - output); + SQLUtils.toMySqlString(stmt)); + + Assert.assertEquals("create user 'jeffrey'@'localhost' identified by password '*90E462C37378CED12064BB3388827D2BA3A9B689'", // + SQLUtils.toMySqlString(stmt, SQLUtils.DEFAULT_LCASE_FORMAT_OPTION)); System.out.println("Tables : " + visitor.getTables()); System.out.println("fields : " + visitor.getColumns()); diff --git a/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlCreateUserTest_4.java b/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlCreateUserTest_4.java index e13e1eea4f..451f1bf844 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlCreateUserTest_4.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/mysql/MySqlCreateUserTest_4.java @@ -41,9 +41,11 @@ public class MySqlCreateUserTest_4 extends MysqlTest { MySqlSchemaStatVisitor visitor = new MySqlSchemaStatVisitor(); stmt.accept(visitor); - String output = SQLUtils.toMySqlString(stmt); Assert.assertEquals("CREATE USER 'jeffrey'@'localhost' IDENTIFIED WITH my_auth_plugin", // - output); + SQLUtils.toMySqlString(stmt)); + + Assert.assertEquals("create user 'jeffrey'@'localhost' identified with my_auth_plugin", // + SQLUtils.toMySqlString(stmt, SQLUtils.DEFAULT_LCASE_FORMAT_OPTION)); System.out.println("Tables : " + visitor.getTables()); System.out.println("fields : " + visitor.getColumns()); diff --git a/src/test/java/com/alibaba/druid/bvt/sql/odps/OdpsAlterTableDisableLifecycle.java b/src/test/java/com/alibaba/druid/bvt/sql/odps/OdpsAlterTableDisableLifecycle.java index b39fd35dc1..0a36f88a2b 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/odps/OdpsAlterTableDisableLifecycle.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/odps/OdpsAlterTableDisableLifecycle.java @@ -12,6 +12,9 @@ public class OdpsAlterTableDisableLifecycle extends TestCase { String sql = "ALTER TABLE trans DISABLE LIFECYCLE;"; Assert.assertEquals("ALTER TABLE trans" // + "\n\tDISABLE LIFECYCLE;", SQLUtils.formatOdps(sql)); + + Assert.assertEquals("alter table trans" // + + "\n\tdisable lifecycle;", SQLUtils.formatOdps(sql, SQLUtils.DEFAULT_LCASE_FORMAT_OPTION)); } @@ -19,5 +22,8 @@ public class OdpsAlterTableDisableLifecycle extends TestCase { String sql = "ALTER TABLE trans PARTITION(dt='20141111') DISABLE LIFECYCLE;"; Assert.assertEquals("ALTER TABLE trans" + "\n\tPARTITION (dt = '20141111') DISABLE LIFECYCLE;", SQLUtils.formatOdps(sql)); + + Assert.assertEquals("alter table trans" + + "\n\tpartition (dt = '20141111') disable lifecycle;", SQLUtils.formatOdps(sql, SQLUtils.DEFAULT_LCASE_FORMAT_OPTION)); } } diff --git a/src/test/java/com/alibaba/druid/bvt/sql/odps/OdpsAlterTableEnableLifecycle.java b/src/test/java/com/alibaba/druid/bvt/sql/odps/OdpsAlterTableEnableLifecycle.java index 5861cea9b3..3c0886e123 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/odps/OdpsAlterTableEnableLifecycle.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/odps/OdpsAlterTableEnableLifecycle.java @@ -12,6 +12,9 @@ public class OdpsAlterTableEnableLifecycle extends TestCase { String sql = "ALTER TABLE trans ENABLE LIFECYCLE;"; Assert.assertEquals("ALTER TABLE trans" // + "\n\tENABLE LIFECYCLE;", SQLUtils.formatOdps(sql)); + + Assert.assertEquals("alter table trans" // + + "\n\tenable lifecycle;", SQLUtils.formatOdps(sql, SQLUtils.DEFAULT_LCASE_FORMAT_OPTION)); } @@ -19,5 +22,8 @@ public class OdpsAlterTableEnableLifecycle extends TestCase { String sql = "ALTER TABLE trans PARTITION(dt='20141111') ENABLE LIFECYCLE;"; Assert.assertEquals("ALTER TABLE trans" + "\n\tPARTITION (dt = '20141111') ENABLE LIFECYCLE;", SQLUtils.formatOdps(sql)); + + Assert.assertEquals("alter table trans" + + "\n\tpartition (dt = '20141111') enable lifecycle;", SQLUtils.formatOdps(sql, SQLUtils.DEFAULT_LCASE_FORMAT_OPTION)); } } diff --git a/src/test/java/com/alibaba/druid/bvt/sql/odps/OdpsSetLabelTest.java b/src/test/java/com/alibaba/druid/bvt/sql/odps/OdpsSetLabelTest.java index a9867d9844..7b3d11f5e8 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/odps/OdpsSetLabelTest.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/odps/OdpsSetLabelTest.java @@ -16,7 +16,8 @@ public class OdpsSetLabelTest extends TestCase { OdpsStatementParser parser = new OdpsStatementParser(sql); SQLStatement stmt = parser.parseStatementList().get(0); parser.match(Token.EOF); - String output = SQLUtils.toOdpsString(stmt); - Assert.assertEquals("SET LABEL S3 TO USER aliyun$abc@alibaba-inc.com", output); + + Assert.assertEquals("SET LABEL S3 TO USER aliyun$abc@alibaba-inc.com", SQLUtils.toOdpsString(stmt)); + Assert.assertEquals("set label S3 to user aliyun$abc@alibaba-inc.com", SQLUtils.toOdpsString(stmt, SQLUtils.DEFAULT_LCASE_FORMAT_OPTION)); } } diff --git a/src/test/java/com/alibaba/druid/bvt/sql/odps/OdpsShowTablesTest0.java b/src/test/java/com/alibaba/druid/bvt/sql/odps/OdpsShowTablesTest0.java index fcf425f9ec..9a63a45e22 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/odps/OdpsShowTablesTest0.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/odps/OdpsShowTablesTest0.java @@ -25,8 +25,9 @@ public class OdpsShowTablesTest0 extends TestCase { OdpsStatementParser parser = new OdpsStatementParser(sql); SQLStatement stmt = parser.parseStatementList().get(0); parser.match(Token.EOF); - String output = SQLUtils.toOdpsString(stmt); - Assert.assertEquals("SHOW TABLES FROM xx", output); + + Assert.assertEquals("SHOW TABLES FROM xx", SQLUtils.toOdpsString(stmt)); + Assert.assertEquals("show tables from xx", SQLUtils.toOdpsString(stmt, SQLUtils.DEFAULT_LCASE_FORMAT_OPTION)); } public void test_from_like() throws Exception { @@ -34,7 +35,8 @@ public class OdpsShowTablesTest0 extends TestCase { OdpsStatementParser parser = new OdpsStatementParser(sql); SQLStatement stmt = parser.parseStatementList().get(0); parser.match(Token.EOF); - String output = SQLUtils.toOdpsString(stmt); - Assert.assertEquals("SHOW TABLES FROM xx LIKE '*'", output); + + Assert.assertEquals("SHOW TABLES FROM xx LIKE '*'", SQLUtils.toOdpsString(stmt)); + Assert.assertEquals("show tables from xx like '*'", SQLUtils.toOdpsString(stmt, SQLUtils.DEFAULT_LCASE_FORMAT_OPTION)); } } diff --git a/src/test/java/com/alibaba/druid/bvt/sql/postgresql/PGCreateTableTest_4.java b/src/test/java/com/alibaba/druid/bvt/sql/postgresql/PGCreateTableTest_4.java index bfe316cc49..c6af04b0d7 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/postgresql/PGCreateTableTest_4.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/postgresql/PGCreateTableTest_4.java @@ -20,6 +20,7 @@ import java.util.List; import org.junit.Assert; import com.alibaba.druid.sql.PGTest; +import com.alibaba.druid.sql.SQLUtils; import com.alibaba.druid.sql.ast.SQLStatement; import com.alibaba.druid.sql.dialect.postgresql.parser.PGSQLStatementParser; import com.alibaba.druid.sql.dialect.postgresql.visitor.PGSchemaStatVisitor; @@ -36,13 +37,26 @@ public class PGCreateTableTest_4 extends PGTest { PGSQLStatementParser parser = new PGSQLStatementParser(sql); List statementList = parser.parseStatementList(); - SQLStatement statemen = statementList.get(0); - print(statementList); + SQLStatement stmt = statementList.get(0); + + Assert.assertEquals("CREATE TABLE products (" + + "\n\tproduct_no integer," + + "\n\tname text," + + "\n\tprice numeric" + + "\n\t\tCHECK (price > 0)" + + "\n)", SQLUtils.toPGString(stmt)); + + Assert.assertEquals("create table products (" + + "\n\tproduct_no integer," + + "\n\tname text," + + "\n\tprice numeric" + + "\n\t\tcheck (price > 0)" + + "\n)", SQLUtils.toPGString(stmt, SQLUtils.DEFAULT_LCASE_FORMAT_OPTION)); Assert.assertEquals(1, statementList.size()); PGSchemaStatVisitor visitor = new PGSchemaStatVisitor(); - statemen.accept(visitor); + stmt.accept(visitor); System.out.println("Tables : " + visitor.getTables()); System.out.println("fields : " + visitor.getColumns()); diff --git a/src/test/java/com/alibaba/druid/bvt/sql/postgresql/PGCreateTableTest_5.java b/src/test/java/com/alibaba/druid/bvt/sql/postgresql/PGCreateTableTest_5.java index 97c07750ff..d0f9da212e 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/postgresql/PGCreateTableTest_5.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/postgresql/PGCreateTableTest_5.java @@ -20,6 +20,7 @@ import java.util.List; import org.junit.Assert; import com.alibaba.druid.sql.PGTest; +import com.alibaba.druid.sql.SQLUtils; import com.alibaba.druid.sql.ast.SQLStatement; import com.alibaba.druid.sql.dialect.postgresql.parser.PGSQLStatementParser; import com.alibaba.druid.sql.dialect.postgresql.visitor.PGSchemaStatVisitor; @@ -34,13 +35,20 @@ public class PGCreateTableTest_5 extends PGTest { PGSQLStatementParser parser = new PGSQLStatementParser(sql); List statementList = parser.parseStatementList(); - SQLStatement statemen = statementList.get(0); - print(statementList); + SQLStatement stmt = statementList.get(0); + + Assert.assertEquals("CREATE TABLE products (" + + "\n\tstate char(2)" + + "\n) INHERITS (cities)", SQLUtils.toPGString(stmt)); + + Assert.assertEquals("create table products (" + + "\n\tstate char(2)" + + "\n) inherits (cities)", SQLUtils.toPGString(stmt, SQLUtils.DEFAULT_LCASE_FORMAT_OPTION)); Assert.assertEquals(1, statementList.size()); PGSchemaStatVisitor visitor = new PGSchemaStatVisitor(); - statemen.accept(visitor); + stmt.accept(visitor); System.out.println("Tables : " + visitor.getTables()); System.out.println("fields : " + visitor.getColumns()); diff --git a/src/test/java/com/alibaba/druid/bvt/sql/postgresql/PGInsertTest5.java b/src/test/java/com/alibaba/druid/bvt/sql/postgresql/PGInsertTest5.java index 302f70281f..2cf0d20773 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/postgresql/PGInsertTest5.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/postgresql/PGInsertTest5.java @@ -37,13 +37,13 @@ public class PGInsertTest5 extends PGTest { PGSQLStatementParser parser = new PGSQLStatementParser(sql); List statementList = parser.parseStatementList(); - SQLStatement statemen = statementList.get(0); + SQLStatement stmt = statementList.get(0); print(statementList); Assert.assertEquals(1, statementList.size()); PGSchemaStatVisitor visitor = new PGSchemaStatVisitor(); - statemen.accept(visitor); + stmt.accept(visitor); System.out.println("Tables : " + visitor.getTables()); System.out.println("fields : " + visitor.getColumns()); diff --git a/src/test/java/com/alibaba/druid/bvt/sql/postgresql/PGSelectTest23.java b/src/test/java/com/alibaba/druid/bvt/sql/postgresql/PGSelectTest23.java index 512b68a0fc..31fb92fe8a 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/postgresql/PGSelectTest23.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/postgresql/PGSelectTest23.java @@ -20,6 +20,7 @@ import java.util.List; import org.junit.Assert; import com.alibaba.druid.sql.PGTest; +import com.alibaba.druid.sql.SQLUtils; import com.alibaba.druid.sql.ast.SQLStatement; import com.alibaba.druid.sql.dialect.postgresql.parser.PGSQLStatementParser; import com.alibaba.druid.sql.dialect.postgresql.visitor.PGSchemaStatVisitor; @@ -31,19 +32,25 @@ public class PGSelectTest23 extends PGTest { PGSQLStatementParser parser = new PGSQLStatementParser(sql); List statementList = parser.parseStatementList(); - SQLStatement statemen = statementList.get(0); + SQLStatement stmt = statementList.get(0); print(statementList); Assert.assertEquals("SELECT id, login_name, name, password, salt" + "\n\t, roles, register_date" + "\nFROM user" + "\nWHERE name LIKE ?" - + "\nLIMIT ? OFFSET ?", output(statementList)); + + "\nLIMIT ? OFFSET ?", SQLUtils.toPGString(stmt)); + + Assert.assertEquals("select id, login_name, name, password, salt" + + "\n\t, roles, register_date" + + "\nfrom user" + + "\nwhere name like ?" + + "\nlimit ? offset ?", SQLUtils.toPGString(stmt, SQLUtils.DEFAULT_LCASE_FORMAT_OPTION)); Assert.assertEquals(1, statementList.size()); PGSchemaStatVisitor visitor = new PGSchemaStatVisitor(); - statemen.accept(visitor); + stmt.accept(visitor); System.out.println("Tables : " + visitor.getTables()); System.out.println("fields : " + visitor.getColumns()); diff --git a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerCreateTableTest_3.java b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerCreateTableTest_3.java index c7ddbd9672..f480dc8f36 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerCreateTableTest_3.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerCreateTableTest_3.java @@ -47,7 +47,6 @@ public class SQLServerCreateTableTest_3 extends TestCase { Assert.assertEquals(1, statementList.size()); - String output = SQLUtils.toSQLString(stmt, JdbcConstants.SQL_SERVER); Assert.assertEquals("CREATE TABLE dbo.cwd_directory (" // + "\n\tID NUMERIC NOT NULL,"// + "\n\tdirectory_name NVARCHAR(255),"// @@ -61,7 +60,23 @@ public class SQLServerCreateTableTest_3 extends TestCase { + "\n\tdirectory_type NVARCHAR(60),"// + "\n\tdirectory_position NUMERIC,"// + "\n\tCONSTRAINT PK_cwd_directory PRIMARY KEY (ID)"// - + "\n)", output); + + "\n)", SQLUtils.toSQLString(stmt, JdbcConstants.SQL_SERVER)); + + + Assert.assertEquals("create table dbo.cwd_directory (" // + + "\n\tID NUMERIC not null,"// + + "\n\tdirectory_name NVARCHAR(255),"// + + "\n\tlower_directory_name NVARCHAR(255),"// + + "\n\tcreated_date DATETIME,"// + + "\n\tupdated_date DATETIME,"// + + "\n\tactive int,"// + + "\n\tdescription NVARCHAR(255),"// + + "\n\timpl_class NVARCHAR(255),"// + + "\n\tlower_impl_class NVARCHAR(255),"// + + "\n\tdirectory_type NVARCHAR(60),"// + + "\n\tdirectory_position NUMERIC,"// + + "\n\tconstraint PK_cwd_directory primary key (ID)"// + + "\n)", SQLUtils.toSQLString(stmt, JdbcConstants.SQL_SERVER, SQLUtils.DEFAULT_LCASE_FORMAT_OPTION)); SQLServerSchemaStatVisitor visitor = new SQLServerSchemaStatVisitor(); stmt.accept(visitor); diff --git a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerTopTest.java b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerTopTest.java index 91f35dc330..72e07fab1f 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerTopTest.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerTopTest.java @@ -16,26 +16,24 @@ package com.alibaba.druid.bvt.sql.sqlserver; import org.junit.Assert; -import junit.framework.TestCase; +import com.alibaba.druid.sql.SQLUtils; import com.alibaba.druid.sql.ast.statement.SQLSelectStatement; import com.alibaba.druid.sql.dialect.sqlserver.parser.SQLServerStatementParser; -import com.alibaba.druid.sql.test.TestUtils; + +import junit.framework.TestCase; public class SQLServerTopTest extends TestCase { public void test_isEmpty() throws Exception { String sql = "SELECT TOP 10 * FROM T"; - String expect = "SELECT TOP 10 *\nFROM T"; - SQLServerStatementParser parser = new SQLServerStatementParser(sql); SQLSelectStatement stmt = (SQLSelectStatement) parser.parseStatementList().get(0); - String text = TestUtils.outputSqlServer(stmt); - Assert.assertEquals(expect, text); + Assert.assertEquals("SELECT TOP 10 *\nFROM T", SQLUtils.toSQLServerString(stmt)); + Assert.assertEquals("select top 10 *\nfrom T", SQLUtils.toSQLServerString(stmt, SQLUtils.DEFAULT_LCASE_FORMAT_OPTION)); - System.out.println(text); } }