// Path: src/main/java/com/elong/pb/newdda/client/router/parser/visitor/basic/mysql/MySqlEvalVisitor.java
// public class MySqlEvalVisitor extends MySqlEvalVisitorImpl {
// 
//     public static final String EVAL_VAR_INDEX = "EVAL_VAR_INDEX";
// 
//     @Override
//     public boolean visit(final SQLVariantRefExpr x) {
//         if (!"?".equals(x.getName())) {
//             return false;
//         }
// 
//         Map<String, Object> attributes = x.getAttributes();
// 
//         int varIndex = x.getIndex();
// 
//         if (varIndex == -1 || getParameters().size() <= varIndex) {
//             return false;
//         }
//         if (attributes.containsKey(EVAL_VALUE)) {
//             return false;
//         }
//         Object value = getParameters().get(varIndex);
//         if (value == null) {
//             value = EVAL_VALUE_NULL;
//         }
//         attributes.put(EVAL_VALUE, value);
//         attributes.put(EVAL_VAR_INDEX, varIndex);
//         return false;
//     }
// 
// }


import com.alibaba.druid.sql.ast.expr.SQLVariantRefExpr;
import com.alibaba.druid.sql.visitor.SQLEvalVisitorUtils;
import com.elong.pb.newdda.client.router.parser.visitor.basic.mysql.MySqlEvalVisitor;
import com.google.common.collect.Lists;
import org.testng.annotations.Test;
package com.elong.pb.newdda.client.visitor;


/**
 * Created by zhangyong on 2016/9/14.
 */
public class MySqlEvalVisitorUnitTest {

    @Test
    public void testVisit() throws Exception {
        SQLVariantRefExpr expr = new SQLVariantRefExpr("?");
        expr.setIndex(1);
// Path: src/main/java/com/elong/pb/newdda/client/router/parser/visitor/basic/mysql/MySqlEvalVisitor.java
// public class MySqlEvalVisitor extends MySqlEvalVisitorImpl {
// 
//     public static final String EVAL_VAR_INDEX = "EVAL_VAR_INDEX";
// 
//     @Override
//     public boolean visit(final SQLVariantRefExpr x) {
//         if (!"?".equals(x.getName())) {
//             return false;
//         }
// 
//         Map<String, Object> attributes = x.getAttributes();
// 
//         int varIndex = x.getIndex();
// 
//         if (varIndex == -1 || getParameters().size() <= varIndex) {
//             return false;
//         }
//         if (attributes.containsKey(EVAL_VALUE)) {
//             return false;
//         }
//         Object value = getParameters().get(varIndex);
//         if (value == null) {
//             value = EVAL_VALUE_NULL;
//         }
//         attributes.put(EVAL_VALUE, value);
//         attributes.put(EVAL_VAR_INDEX, varIndex);
//         return false;
//     }
// 
// }


// Path: src/test/java/com/elong/pb/newdda/client/visitor/MySqlEvalVisitorUnitTest.java
import com.alibaba.druid.sql.ast.expr.SQLVariantRefExpr;
import com.alibaba.druid.sql.visitor.SQLEvalVisitorUtils;
import com.elong.pb.newdda.client.router.parser.visitor.basic.mysql.MySqlEvalVisitor;
import com.google.common.collect.Lists;
import org.testng.annotations.Test;

package com.elong.pb.newdda.client.visitor;


/**
 * Created by zhangyong on 2016/9/14.
 */
public class MySqlEvalVisitorUnitTest {

    @Test
    public void testVisit() throws Exception {
        SQLVariantRefExpr expr = new SQLVariantRefExpr("?");
        expr.setIndex(1);
        MySqlEvalVisitor visitor = new MySqlEvalVisitor();