Package com.google.visualization.datasource.query

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


        subFilters.get(1).getAllColumnIds());

  }

  public void testPrecedence() throws Exception {
    Query query = QueryBuilder.getInstance().parseQuery(
        "SELECT c1,c2 WHERE NOT c1 < c2 OR NOT c3 < " +
            "c4 AND NOT c5 < c6 OR c7 < c8 AND " +
            "c9 < c10 AND c11 < c12 OR c13 < c14 AND c15 < c16");
        // interpretation: (!(c1 < c2)) or
        //                 ((not (c3 < c4)) and (not (c5 < c6))) or
        //                 ((c7 < c8) and (c9 < c10) and (c11 < c12)) or
        //                 ((c13 < c14) and (c15 < c16))
    QueryFilter filter = query.getFilter();
    assertTrue(filter instanceof CompoundFilter);
    CompoundFilter f = (CompoundFilter) filter;
    assertEquals(CompoundFilter.LogicalOperator.OR, f.getOperator());
    List<QueryFilter> subFilters = f.getSubFilters();
    assertEquals(4, subFilters.size());
View Full Code Here


        subFilters.get(1).getAllColumnIds());

  }

  public void testIsNull() throws Exception {
    Query query = QueryBuilder.getInstance().parseQuery("WHERE a iS nULl");
    assertTrue(query.getFilter() instanceof ColumnIsNullFilter);
    ColumnIsNullFilter filter = (ColumnIsNullFilter) query.getFilter();
    assertEquals("a", filter.getColumn().getId());
  }
View Full Code Here

    ColumnIsNullFilter filter = (ColumnIsNullFilter) query.getFilter();
    assertEquals("a", filter.getColumn().getId());
  }

  public void testIsNotNull() throws Exception {
    Query query = QueryBuilder.getInstance().parseQuery("WHERE a iS NOt nULl");
    assertTrue(query.getFilter() instanceof NegationFilter);
    NegationFilter filter = (NegationFilter) query.getFilter();
    assertTrue(filter.getSubFilter() instanceof ColumnIsNullFilter);
    ColumnIsNullFilter filter2 = (ColumnIsNullFilter) filter.getSubFilter();
    assertEquals("a", filter2.getColumn().getId());
  }
View Full Code Here

  /**
   * Test an empty query, no modification from input to output,
   */
  public void testEmptyQuery() throws Exception {
    Query q = new Query();
    DataTable res = QueryEngine.executeQuery(q, input, ULocale.US);
    List<ColumnDescription> cols = res.getColumnDescriptions();
    assertEquals(3, cols.size());
    assertEquals("name", cols.get(0).getId());
    assertEquals("weight", cols.get(1).getId());
View Full Code Here

  /**
   * Test sorting by a number column.
   */
  public void testSortByNumberAscending() throws Exception {
    Query q = new Query();
    QuerySort sort = new QuerySort();
    sort.addSort(new ColumnSort(new SimpleColumn("weight"),
        SortOrder.ASCENDING));
    q.setSort(sort);
    DataTable res = QueryEngine.executeQuery(q, input, ULocale.US);

    assertEquals(3, res.getRows().size());
    assertEquals("111.0", res.getRows().get(0).getCells().get(1).toString());
    assertEquals("222.0", res.getRows().get(1).getCells().get(1).toString());
View Full Code Here

  }

  // GROUP and PIVOT clause tests

  public void testSimpleGroupAndPivot() throws Exception {
    Query query = QueryBuilder.getInstance().parseQuery("select min(salary), "
        + "avg(height) group by dept, subdept pivot year, month");
    assertEquals(Lists.<AbstractColumn>newArrayList(
        new AggregationColumn(new SimpleColumn("salary"), AggregationType.MIN),
        new AggregationColumn(new SimpleColumn("height"), AggregationType.AVG)),
        query.getSelection().getColumns());
    assertEquals(Lists.newArrayList("dept", "subdept"),
        query.getGroup().getColumnIds());
    assertEquals(Lists.newArrayList("year", "month"),
        query.getPivot().getColumnIds());
  }
View Full Code Here

  /**
   * Test sorting by a number column.
   */
  public void testSortByNumberDescending() throws Exception {
    Query q = new Query();
    QuerySort sort = new QuerySort();
    sort.addSort(new ColumnSort(new SimpleColumn("weight"),
        SortOrder.DESCENDING));
    q.setSort(sort);
    DataTable res = QueryEngine.executeQuery(q, input, ULocale.US);

    assertEquals(3, res.getRows().size());
    assertEquals("333.0", res.getRows().get(0).getCells().get(1).toString());
    assertEquals("222.0", res.getRows().get(1).getCells().get(1).toString());
View Full Code Here

  /**
   * Test sorting by a text column.
   */
  public void testSortByTextAscending() throws Exception {
    Query q = new Query();
    QuerySort sort = new QuerySort();
    sort.addSort(new ColumnSort(new SimpleColumn("name"), SortOrder.ASCENDING));
    q.setSort(sort);
    DataTable res = QueryEngine.executeQuery(q, input, ULocale.US);

    assertEquals(3, res.getRows().size());
    assertEquals("aaa", res.getRows().get(0).getCells().get(0).toString());
    assertEquals("bbb", res.getRows().get(1).getCells().get(0).toString());
View Full Code Here

  /**
   * Test sorting by a text column.
   */
  public void testSortByTextDescnding() throws Exception {
    Query q = new Query();
    QuerySort sort = new QuerySort();
    sort.addSort(new ColumnSort(new SimpleColumn("name"),
        SortOrder.DESCENDING));
    q.setSort(sort);
    DataTable res = QueryEngine.executeQuery(q, input, ULocale.US);

    assertEquals(3, res.getRows().size());
    assertEquals("ccc", res.getRows().get(0).getCells().get(0).toString());
    assertEquals("bbb", res.getRows().get(1).getCells().get(0).toString());
View Full Code Here

    assertEquals(Lists.newArrayList("year", "month"),
        query.getPivot().getColumnIds());
  }

  public void testDateLiterals() throws Exception {
    Query query = QueryBuilder.getInstance().parseQuery("WHERE c1 > DATE '2006-08-23'");
    assertEquals(new DateValue(2006, 7, 23),
        ((ColumnValueFilter) query.getFilter()).getValue());
    query = QueryBuilder.getInstance().parseQuery(
        "WHERE c1 = DaTeTiMe '2007-01-30 15:33:22.432'");
    assertEquals(new DateTimeValue(2007, 0, 30, 15, 33, 22, 432),
        ((ColumnValueFilter) query.getFilter()).getValue());
    query = QueryBuilder.getInstance().parseQuery(
        "WHERE c1 = timesTaMP '2007-01-30 15:33:22.432'");
    assertEquals(new DateTimeValue(2007, 0, 30, 15, 33, 22, 432),
        ((ColumnValueFilter) query.getFilter()).getValue());
    query = QueryBuilder.getInstance().parseQuery("WHERE c1 != TimeOfDay '15:33:22'");
    assertEquals(new TimeOfDayValue(15, 33, 22),
        ((ColumnValueFilter) query.getFilter()).getValue());
  }
View Full Code Here

TOP

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

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.