Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
apache
Shardingsphere
提交
a8980db4
Shardingsphere
项目概览
apache
/
Shardingsphere
通知
56
Star
3
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
Shardingsphere
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
a8980db4
编写于
3月 29, 2018
作者:
T
terrymanu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
for #660: refactor assert table
上级
f0ad9765
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
34 addition
and
32 deletion
+34
-32
sharding-core/src/test/java/io/shardingjdbc/core/parsing/integrate/asserts/ParserAssertHelper.java
...bc/core/parsing/integrate/asserts/ParserAssertHelper.java
+0
-6
sharding-core/src/test/java/io/shardingjdbc/core/parsing/integrate/asserts/ParserJAXBHelper.java
...jdbc/core/parsing/integrate/asserts/ParserJAXBHelper.java
+3
-24
sharding-core/src/test/java/io/shardingjdbc/core/parsing/integrate/jaxb/root/ParserAssert.java
...ngjdbc/core/parsing/integrate/jaxb/root/ParserAssert.java
+2
-1
sharding-core/src/test/java/io/shardingjdbc/core/parsing/integrate/tests/IntegrateSupportedSQLParsingTest.java
...ing/integrate/tests/IntegrateSupportedSQLParsingTest.java
+29
-1
未找到文件。
sharding-core/src/test/java/io/shardingjdbc/core/parsing/integrate/asserts/ParserAssertHelper.java
浏览文件 @
a8980db4
...
...
@@ -22,7 +22,6 @@ import io.shardingjdbc.core.constant.ShardingOperator;
import
io.shardingjdbc.core.parsing.integrate.jaxb.condition.ConditionAssert
;
import
io.shardingjdbc.core.parsing.integrate.jaxb.condition.Value
;
import
io.shardingjdbc.core.parsing.integrate.jaxb.limit.LimitAssert
;
import
io.shardingjdbc.core.parsing.integrate.jaxb.table.TableAssert
;
import
io.shardingjdbc.core.parsing.integrate.jaxb.token.GeneratedKeyTokenAssert
;
import
io.shardingjdbc.core.parsing.integrate.jaxb.token.IndexTokenAssert
;
import
io.shardingjdbc.core.parsing.integrate.jaxb.token.ItemsTokenAssert
;
...
...
@@ -39,7 +38,6 @@ import io.shardingjdbc.core.parsing.parser.context.condition.Conditions;
import
io.shardingjdbc.core.parsing.parser.context.limit.Limit
;
import
io.shardingjdbc.core.parsing.parser.context.limit.LimitValue
;
import
io.shardingjdbc.core.parsing.parser.context.selectitem.AggregationSelectItem
;
import
io.shardingjdbc.core.parsing.parser.context.table.Tables
;
import
io.shardingjdbc.core.parsing.parser.expression.SQLExpression
;
import
io.shardingjdbc.core.parsing.parser.expression.SQLNumberExpression
;
import
io.shardingjdbc.core.parsing.parser.expression.SQLPlaceholderExpression
;
...
...
@@ -66,10 +64,6 @@ import static org.junit.Assert.assertTrue;
public
class
ParserAssertHelper
{
public
static
void
assertTables
(
final
List
<
TableAssert
>
expected
,
final
Tables
actual
)
{
assertTrue
(
EqualsBuilder
.
reflectionEquals
(
ParserJAXBHelper
.
getTables
(
expected
),
actual
));
}
public
static
void
assertConditions
(
final
List
<
ConditionAssert
>
expected
,
final
Conditions
actual
,
final
boolean
isPreparedStatement
)
{
assertTrue
(
EqualsBuilder
.
reflectionEquals
(
buildExpectedConditions
(
expected
,
isPreparedStatement
),
actual
));
...
...
sharding-core/src/test/java/io/shardingjdbc/core/parsing/integrate/asserts/ParserJAXBHelper.java
浏览文件 @
a8980db4
...
...
@@ -23,39 +23,18 @@ import com.google.common.base.Strings;
import
com.google.common.collect.Lists
;
import
io.shardingjdbc.core.constant.AggregationType
;
import
io.shardingjdbc.core.constant.OrderDirection
;
import
io.shardingjdbc.core.parsing.integrate.jaxb.groupby.GroupByColumnAssert
;
import
io.shardingjdbc.core.parsing.integrate.jaxb.item.AggregationSelectItemAssert
;
import
io.shardingjdbc.core.parsing.integrate.jaxb.table.TableAssert
;
import
io.shardingjdbc.core.parsing.integrate.jaxb.orderby.OrderByColumnAssert
;
import
io.shardingjdbc.core.parsing.integrate.jaxb.root.ParserAssert
;
import
io.shardingjdbc.core.parsing.parser.context.OrderItem
;
import
io.shardingjdbc.core.parsing.parser.context.selectitem.AggregationSelectItem
;
import
io.shardingjdbc.core.parsing.parser.context.table.Table
;
import
io.shardingjdbc.core.parsing.parser.context.table.Tables
;
import
io.shardingjdbc.core.parsing.integrate.jaxb.root.ParserAssert
;
import
io.shardingjdbc.core.parsing.integrate.jaxb.groupby.GroupByColumnAssert
;
import
io.shardingjdbc.core.parsing.integrate.jaxb.orderby.OrderByColumnAssert
;
import
io.shardingjdbc.core.parsing.parser.sql.dql.select.SelectStatement
;
import
java.util.List
;
public
final
class
ParserJAXBHelper
{
/**
* Get tables.
*
* @param tables tables
* @return tables
*/
public
static
Tables
getTables
(
final
List
<
TableAssert
>
tables
)
{
Tables
result
=
new
Tables
();
if
(
null
==
tables
)
{
return
result
;
}
for
(
TableAssert
each
:
tables
)
{
Table
table
=
new
Table
(
each
.
getName
(),
Optional
.
fromNullable
(
each
.
getAlias
()));
result
.
add
(
table
);
}
return
result
;
}
/**
* Get select statement.
*
...
...
sharding-core/src/test/java/io/shardingjdbc/core/parsing/integrate/jaxb/root/ParserAssert.java
浏览文件 @
a8980db4
...
...
@@ -33,6 +33,7 @@ import javax.xml.bind.annotation.XmlAttribute;
import
javax.xml.bind.annotation.XmlElement
;
import
javax.xml.bind.annotation.XmlElementWrapper
;
import
javax.xml.bind.annotation.XmlList
;
import
java.util.LinkedList
;
import
java.util.List
;
@Getter
...
...
@@ -49,7 +50,7 @@ public final class ParserAssert {
@XmlElementWrapper
@XmlElement
(
name
=
"table"
)
private
List
<
TableAssert
>
tables
;
private
List
<
TableAssert
>
tables
=
new
LinkedList
<>()
;
@XmlElementWrapper
@XmlElement
(
name
=
"condition"
)
...
...
sharding-core/src/test/java/io/shardingjdbc/core/parsing/integrate/tests/IntegrateSupportedSQLParsingTest.java
浏览文件 @
a8980db4
...
...
@@ -17,11 +17,15 @@
package
io.shardingjdbc.core.parsing.integrate.tests
;
import
com.google.common.base.Optional
;
import
io.shardingjdbc.core.constant.DatabaseType
;
import
io.shardingjdbc.core.parsing.SQLParsingEngine
;
import
io.shardingjdbc.core.parsing.integrate.asserts.ParserAssertHelper
;
import
io.shardingjdbc.core.parsing.integrate.asserts.ParserJAXBHelper
;
import
io.shardingjdbc.core.parsing.integrate.jaxb.root.ParserAssert
;
import
io.shardingjdbc.core.parsing.integrate.jaxb.table.TableAssert
;
import
io.shardingjdbc.core.parsing.parser.context.table.Table
;
import
io.shardingjdbc.core.parsing.parser.context.table.Tables
;
import
io.shardingjdbc.core.parsing.parser.sql.SQLStatement
;
import
io.shardingjdbc.core.parsing.parser.sql.dql.select.SelectStatement
;
import
io.shardingjdbc.test.sql.SQLCasesLoader
;
...
...
@@ -31,6 +35,11 @@ import org.junit.runners.Parameterized.Parameters;
import
java.util.Arrays
;
import
java.util.Collection
;
import
java.util.List
;
import
static
org
.
hamcrest
.
CoreMatchers
.
is
;
import
static
org
.
junit
.
Assert
.
assertThat
;
import
static
org
.
junit
.
Assert
.
assertTrue
;
@RequiredArgsConstructor
public
final
class
IntegrateSupportedSQLParsingTest
extends
AbstractBaseIntegrateSQLParsingTest
{
...
...
@@ -61,7 +70,7 @@ public final class IntegrateSupportedSQLParsingTest extends AbstractBaseIntegrat
private
void
assertSQLStatement
(
final
SQLStatement
actual
,
final
boolean
isPreparedStatement
)
{
ParserAssert
parserAssert
=
parserAssertsLoader
.
getParserAssert
(
sqlCaseId
);
ParserAssertHelper
.
assertTables
(
parserAssert
.
getTables
(),
actual
.
getTables
());
assertTables
(
actual
.
getTables
(),
parserAssert
.
getTables
());
ParserAssertHelper
.
assertConditions
(
parserAssert
.
getConditions
(),
actual
.
getConditions
(),
isPreparedStatement
);
ParserAssertHelper
.
assertSqlTokens
(
parserAssert
.
getTokens
().
getTokenAsserts
(),
actual
.
getSqlTokens
(),
isPreparedStatement
);
if
(
actual
instanceof
SelectStatement
)
{
...
...
@@ -73,4 +82,23 @@ public final class IntegrateSupportedSQLParsingTest extends AbstractBaseIntegrat
ParserAssertHelper
.
assertLimit
(
parserAssert
.
getLimit
(),
selectStatement
.
getLimit
(),
isPreparedStatement
);
}
}
private
void
assertTables
(
final
Tables
actual
,
final
List
<
TableAssert
>
expected
)
{
assertThat
(
actual
.
getTableNames
().
size
(),
is
(
expected
.
size
()));
for
(
TableAssert
each
:
expected
)
{
Optional
<
Table
>
tableOptional
;
if
(
null
!=
each
.
getAlias
())
{
tableOptional
=
actual
.
find
(
each
.
getAlias
());
}
else
{
tableOptional
=
actual
.
find
(
each
.
getName
());
}
assertTrue
(
tableOptional
.
isPresent
());
assertTable
(
tableOptional
.
get
(),
each
);
}
}
private
void
assertTable
(
final
Table
actual
,
final
TableAssert
expected
)
{
assertThat
(
actual
.
getName
(),
is
(
expected
.
getName
()));
assertThat
(
actual
.
getAlias
().
orNull
(),
is
(
expected
.
getAlias
()));
}
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录