Package com.google.visualization.datasource.query

Examples of com.google.visualization.datasource.query.QueryFilter


   * Tests the building of the SQL query WHERE clause from the Gviz query.
   */
  public void testBuildWhereClause() {
    Query query = new Query();

    QueryFilter queryFilter1 = new ColumnColumnFilter(new SimpleColumn("ID"),
        new SimpleColumn("Salary"), ComparisonFilter.Operator.EQ);
    QueryFilter queryFilter2 = new ColumnValueFilter(new SimpleColumn("ID"),
        new NumberValue(1), ComparisonFilter.Operator.GE);
    QueryFilter queryFilter3 = new ColumnValueFilter(new SimpleColumn("Fname"),
        new TextValue("Mi"), ComparisonFilter.Operator.STARTS_WITH);
    QueryFilter queryFilter4 = new ColumnValueFilter(new SimpleColumn("Lname"),
        new TextValue("SH"), ComparisonFilter.Operator.CONTAINS);
     QueryFilter queryFilter5 = new ColumnValueFilter(new SimpleColumn("Lname"),
        new TextValue("tz"), ComparisonFilter.Operator.ENDS_WITH);
    List<QueryFilter> subFiltersList1 = Lists.newArrayList();
    subFiltersList1.add(queryFilter1);
    subFiltersList1.add(queryFilter2);
    QueryFilter queryCompoundFilter1 =
        new CompoundFilter(CompoundFilter.LogicalOperator.AND, subFiltersList1);
    List<QueryFilter> subFiltersList2 = Lists.newArrayList();
    subFiltersList2.add(queryFilter3);
    subFiltersList2.add(queryFilter4);
    subFiltersList2.add(queryFilter5);
    QueryFilter queryCompoundFilter2 =
        new CompoundFilter(CompoundFilter.LogicalOperator.AND, subFiltersList2);
    List<QueryFilter> subFiltersList3 = Lists.newArrayList();
    subFiltersList3.add(queryCompoundFilter1);
    subFiltersList3.add(queryCompoundFilter2);
    QueryFilter queryCompoundFilter3 =
        new CompoundFilter(CompoundFilter.LogicalOperator.OR, subFiltersList3);
    query.setFilter(queryCompoundFilter3);
    StrBuilder queryStringBuilder = new StrBuilder();
    SqlDataSourceHelper.appendWhereClause(query, queryStringBuilder);
    assertEquals(queryStringBuilder.toString(),
        "WHERE (((`ID`=`Salary`) AND (`ID`>=1.0)) OR ((`Fname` LIKE \"Mi%\") "
        + "AND (`Lname` LIKE \"%SH%\") AND (`Lname` LIKE \"%tz\"))) ",
        queryStringBuilder.toString());

    // Check empty compound filters.
    List<QueryFilter> subFiltersList4 = Lists.newArrayList();
    QueryFilter queryCompoundFilter4 =
        new CompoundFilter(CompoundFilter.LogicalOperator.OR, subFiltersList4);
    query.setFilter(queryCompoundFilter4);
    queryStringBuilder = new StrBuilder();
    SqlDataSourceHelper.appendWhereClause(query, queryStringBuilder);
    assertEquals(queryStringBuilder.toString(), "WHERE false ");
    QueryFilter queryCompoundFilter5 =
        new CompoundFilter(CompoundFilter.LogicalOperator.AND, subFiltersList4);
    query.setFilter(queryCompoundFilter5);
    queryStringBuilder = new StrBuilder();
    SqlDataSourceHelper.appendWhereClause(query, queryStringBuilder);
    assertEquals(queryStringBuilder.toString(), "WHERE true ");

    // Check compound filter with one sub-filter.
    List<QueryFilter> subFiltersList6 = Lists.newArrayList(
        (QueryFilter) new ColumnColumnFilter(new SimpleColumn("ID"),
        new SimpleColumn("Salary"), ComparisonFilter.Operator.EQ));
    QueryFilter queryCompoundFilter6 =
        new CompoundFilter(CompoundFilter.LogicalOperator.OR, subFiltersList6);
    query.setFilter(queryCompoundFilter6);
    queryStringBuilder = new StrBuilder();
    SqlDataSourceHelper.appendWhereClause(query, queryStringBuilder);
    assertEquals(queryStringBuilder.toString(), "WHERE ((`ID`=`Salary`)) ",
View Full Code Here


        TimeComponentExtractor.getInstance(
            TimeComponentExtractor.TimeComponent.HOUR)));
    q.setSelection(selection);

    //Add filter.
    QueryFilter filter = new ColumnValueFilter(new SimpleColumn("name"),
        new TextValue("name"), ComparisonFilter.Operator.EQ);
    q.setFilter(filter);

    //Add group.
    QueryGroup group = new QueryGroup();
View Full Code Here

    selection.addColumn(col1);
    selection.addColumn(col2);
    q.setSelection(selection);

    // Add Filter
    QueryFilter filter = new ColumnValueFilter(col3, new NumberValue(-5),
        ComparisonFilter.Operator.GT);
    q.setFilter(filter);

    q.validate();
View Full Code Here

      Lists.<AbstractColumn>newArrayList(), new Constant(new NumberValue(2)));
    AbstractColumn col2 = new ScalarFunctionColumn(
      Lists.<AbstractColumn>newArrayList(new SimpleColumn("weight"), col1),
      Modulo.getInstance());

    QueryFilter filter = new ColumnValueFilter(col2,
      new NumberValue(0), ComparisonFilter.Operator.EQ);
    q.setFilter(filter);
 
    q.validate();
View Full Code Here

    assertEquals(Lists.newArrayList(new SimpleColumn("\u05d0"),
        new SimpleColumn("\u05d1"), new SimpleColumn("\u05d2")),
        selection.getColumns());

    query = QueryBuilder.getInstance().parseQuery("SELECT * WHERE c='\u311e'");
    QueryFilter filter = query.getFilter();
    assertTrue(filter instanceof ColumnValueFilter);
    ColumnValueFilter cvf = (ColumnValueFilter) filter;
    assertEquals("c", cvf.getColumn().getId());
    Value v = cvf.getValue();
    assertEquals(ValueType.TEXT, v.getType());
View Full Code Here

  // WHERE clause tests:

  public void testColumnColumnFilter() throws Exception {
    Query query = QueryBuilder.getInstance().parseQuery(" WHERE C1 > `c 2`");
    QueryFilter filter = query.getFilter();
    assertTrue(filter instanceof ColumnColumnFilter);
    ColumnColumnFilter f = (ColumnColumnFilter) filter;
    assertEquals("C1", f.getFirstColumn().getId());
    assertEquals("c 2", f.getSecondColumn().getId());
    assertEquals(ComparisonFilter.Operator.GT, f.getOperator());
View Full Code Here

    assertEquals(ComparisonFilter.Operator.GT, f.getOperator());
  }

  public void testColumnValueFilterWithNumber() throws Exception {
    Query query = QueryBuilder.getInstance().parseQuery(" WHERE c1 <= 7.55");
    QueryFilter filter = query.getFilter();
    assertTrue(filter instanceof ColumnValueFilter);
    ColumnValueFilter f = (ColumnValueFilter) filter;
    assertEquals("c1", f.getColumn().getId());
    Value val = f.getValue();
    assertTrue(val instanceof NumberValue);
View Full Code Here

    assertEquals(ComparisonFilter.Operator.LE, f.getOperator());
  }

  public void testColumnValueFilterWithText1() throws Exception {
    Query query = QueryBuilder.getInstance().parseQuery(" WHERE `selEct` = 'baba'");
    QueryFilter filter = query.getFilter();
    assertTrue(filter instanceof ColumnValueFilter);
    ColumnValueFilter f = (ColumnValueFilter) filter;
    assertEquals("selEct", f.getColumn().getId());
    Value val = f.getValue();
    assertTrue(val instanceof TextValue);
View Full Code Here

    assertEquals(ComparisonFilter.Operator.EQ, f.getOperator());
  }

  public void testColumnValueFilterWithText2() throws Exception {
    Query query = QueryBuilder.getInstance().parseQuery(" WHERE MiN <> \"baba\"");
    QueryFilter filter = query.getFilter();
    assertTrue(filter instanceof ColumnValueFilter);
    ColumnValueFilter f = (ColumnValueFilter) filter;
    assertEquals("MiN", f.getColumn().getId());
    Value val = f.getValue();
    assertTrue(val instanceof TextValue);
View Full Code Here

    assertEquals(ComparisonFilter.Operator.NE, f.getOperator());
  }

  public void testColumnValueFilterWithBoolean1() throws Exception {
    Query query = QueryBuilder.getInstance().parseQuery(" WHERE c1 != trUe");
    QueryFilter filter = query.getFilter();
    assertTrue(filter instanceof ColumnValueFilter);
    ColumnValueFilter f = (ColumnValueFilter) filter;
    assertEquals("c1", f.getColumn().getId());
    Value val = f.getValue();
    assertTrue(val instanceof BooleanValue);
View Full Code Here

TOP

Related Classes of com.google.visualization.datasource.query.QueryFilter

Copyright © 2018 www.massapicom. 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.