Package net.sf.jsqlparser.util

Source Code of net.sf.jsqlparser.util.ConnectExpressionsVisitorTest

package net.sf.jsqlparser.util;

import java.io.StringReader;
import net.sf.jsqlparser.JSQLParserException;
import net.sf.jsqlparser.expression.BinaryExpression;
import net.sf.jsqlparser.expression.operators.arithmetic.Addition;
import net.sf.jsqlparser.expression.operators.arithmetic.Concat;
import net.sf.jsqlparser.parser.CCJSqlParserManager;
import net.sf.jsqlparser.statement.select.Select;
import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;
import static org.junit.Assert.*;

/**
*
* @author tw
*/
public class ConnectExpressionsVisitorTest {

  public ConnectExpressionsVisitorTest() {
  }

  @BeforeClass
  public static void setUpClass() {
  }

  @AfterClass
  public static void tearDownClass() {
  }

  @Before
  public void setUp() {
  }

  @After
  public void tearDown() {
  }
  CCJSqlParserManager parserManager = new CCJSqlParserManager();

  @Test
  public void testVisit_PlainSelect_concat() throws JSQLParserException {
    String sql = "select a,b,c from test";
    Select select = (Select) parserManager.parse(new StringReader(sql));
    ConnectExpressionsVisitor instance = new ConnectExpressionsVisitor() {
      @Override
      protected BinaryExpression createBinaryExpression() {
        return new Concat();
      }
    };
    select.getSelectBody().accept(instance);

    assertEquals("SELECT a || b || c AS expr FROM test", select.toString());
  }

  @Test
  public void testVisit_PlainSelect_addition() throws JSQLParserException {
    String sql = "select a,b,c from test";
    Select select = (Select) parserManager.parse(new StringReader(sql));
    ConnectExpressionsVisitor instance = new ConnectExpressionsVisitor("testexpr") {
      @Override
      protected BinaryExpression createBinaryExpression() {
        return new Addition();
      }
    };
    select.getSelectBody().accept(instance);

    assertEquals("SELECT a + b + c AS testexpr FROM test", select.toString());
  }
}
TOP

Related Classes of net.sf.jsqlparser.util.ConnectExpressionsVisitorTest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.