#2053 Unit test for show tables

This commit is contained in:
sunsun314
2017-10-21 22:05:22 +08:00
parent 86dfa25bf6
commit dd8a2c4224
@@ -26,17 +26,62 @@ 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 org.junit.Test;
public class SHOW_TABLES_Syntax_Test extends TestCase {
public void test_0() throws Exception {
String sql = "SHOW TABLES;";
public void test_() throws Exception {
String sql = "SHOW TABLES FROM SUNTEST ";
SQLStatementParser parser = new MySqlStatementParser(sql);
List<SQLStatement> stmtList = parser.parseStatementList();
String text = SQLUtils.toSQLString(stmtList, JdbcConstants.MYSQL);
Assert.assertEquals("SHOW TABLES FROM SUNTEST", text);
sql = "SHOW FULL TABLES FROM SUNTEST ";
parser = new MySqlStatementParser(sql);
stmtList = parser.parseStatementList();
text = SQLUtils.toSQLString(stmtList, JdbcConstants.MYSQL);
Assert.assertEquals("SHOW FULL TABLES FROM SUNTEST", text);
sql = "SHOW TABLES IN SUNTEST ";
parser = new MySqlStatementParser(sql);
stmtList = parser.parseStatementList();
text = SQLUtils.toSQLString(stmtList, JdbcConstants.MYSQL);
Assert.assertEquals("SHOW TABLES FROM SUNTEST", text);
sql = "SHOW FULL TABLES IN SUNTEST ";
parser = new MySqlStatementParser(sql);
stmtList = parser.parseStatementList();
text = SQLUtils.toSQLString(stmtList, JdbcConstants.MYSQL);
Assert.assertEquals("SHOW FULL TABLES FROM SUNTEST", text);
sql = "SHOW FULL TABLES IN SUNTEST LIKE '%DDD%' ";
parser = new MySqlStatementParser(sql);
stmtList = parser.parseStatementList();
text = SQLUtils.toSQLString(stmtList, JdbcConstants.MYSQL);
Assert.assertEquals("SHOW FULL TABLES FROM SUNTEST LIKE '%DDD%'", text);
sql = "SHOW FULL TABLES FROM SUNTEST LIKE '%DDD%' ";
parser = new MySqlStatementParser(sql);
stmtList = parser.parseStatementList();
text = SQLUtils.toSQLString(stmtList, JdbcConstants.MYSQL);
Assert.assertEquals("SHOW FULL TABLES FROM SUNTEST LIKE '%DDD%'", text);
sql = "SHOW FULL TABLES IN SUNTEST WHERE NAME = 'DDD' ";
parser = new MySqlStatementParser(sql);
stmtList = parser.parseStatementList();
text = SQLUtils.toSQLString(stmtList, JdbcConstants.MYSQL);
Assert.assertEquals("SHOW FULL TABLES FROM SUNTEST WHERE NAME = 'DDD'", text);
sql = "SHOW FULL TABLES FROM SUNTEST WHERE NAME = 'DDD' ";
parser = new MySqlStatementParser(sql);
stmtList = parser.parseStatementList();
text = SQLUtils.toSQLString(stmtList, JdbcConstants.MYSQL);
Assert.assertEquals("SHOW FULL TABLES FROM SUNTEST WHERE NAME = 'DDD'", text);
Assert.assertEquals("SHOW TABLES;", text);
}
}