提交 4ad68cb2 编写于 作者: G Gao Hongtao 提交者: gaoht

Reform pull request and add test case

上级 bf39bd23
......@@ -94,10 +94,9 @@ public class OrVisitor extends AbstractMySQLVisitor {
if (Boolean.TRUE.equals(WallVisitorUtils.getValue(x))) {
return false;
}
if(orASTNode == null){
orASTNode = new SimpleOrASTNode(x, new OrVisitor(this));
}else{
if (orASTNode == null) {
orASTNode = new SimpleOrASTNode(x, new OrVisitor(this));
} else {
CompositeOrASTNode existingOutConditionOrASTNode = new CompositeOrASTNode();
existingOutConditionOrASTNode.addSubNode(orASTNode);
existingOutConditionOrASTNode.addSubNode(new SimpleOrASTNode(x, new OrVisitor(this)));
......
......@@ -139,4 +139,44 @@
</condition-context>
</condition-contexts>
</assert>
<assert id="assertOrAnd" sql="select * from order where (id=1 or user_id=2) and (name=3 or age=4)" expected-sql="SELECT * FROM [Token(order)] WHERE (id = 1 OR user_id = 2) AND (name = 3 OR age = 4)">
<tables>
<table name="order"/>
</tables>
<condition-contexts>
<condition-context>
<condition column-name="user_id" table-name="order" operator="EQUAL">
<value value="2" type="java.lang.Integer" />
</condition>
<condition column-name="age" table-name="order" operator="EQUAL">
<value value="4" type="java.lang.Integer" />
</condition>
</condition-context>
<condition-context>
<condition column-name="user_id" table-name="order" operator="EQUAL">
<value value="2" type="java.lang.Integer" />
</condition>
<condition column-name="name" table-name="order" operator="EQUAL">
<value value="3" type="java.lang.Integer" />
</condition>
</condition-context>
<condition-context>
<condition column-name="id" table-name="order" operator="EQUAL">
<value value="1" type="java.lang.Integer" />
</condition>
<condition column-name="age" table-name="order" operator="EQUAL">
<value value="4" type="java.lang.Integer" />
</condition>
</condition-context>
<condition-context>
<condition column-name="id" table-name="order" operator="EQUAL">
<value value="1" type="java.lang.Integer" />
</condition>
<condition column-name="name" table-name="order" operator="EQUAL">
<value value="3" type="java.lang.Integer" />
</condition>
</condition-context>
</condition-contexts>
</assert>
</asserts>
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册