Search in sources :

Example 11 with Query

use of com.yahoo.bullet.parsing.Query in project bullet-core by yahoo.

the class RunningQueryTest method testCreatingWithQuery.

@Test
public void testCreatingWithQuery() {
    BulletConfig config = new BulletConfig();
    Query query = new Query();
    query.setAggregation(new Aggregation());
    query.configure(config);
    Assert.assertFalse(query.initialize().isPresent());
    RunningQuery runningQuery = new RunningQuery("foo", query);
    Assert.assertFalse(runningQuery.initialize().isPresent());
    Assert.assertEquals(runningQuery.getId(), "foo");
    Assert.assertNotNull(runningQuery.getQuery());
    String actual = runningQuery.toString();
    Assert.assertTrue(actual.contains("{"));
    Assert.assertTrue(actual.contains("filters: null, projection: null,"));
    Assert.assertTrue(actual.contains("aggregation: {size: 500, type: RAW, fields: null, attributes: null},"));
    Assert.assertTrue(actual.contains("window: null, duration:"));
    Assert.assertTrue(actual.contains("}"));
}
Also used : Aggregation(com.yahoo.bullet.parsing.Aggregation) QueryUtils.makeAggregationQuery(com.yahoo.bullet.parsing.QueryUtils.makeAggregationQuery) Query(com.yahoo.bullet.parsing.Query) BulletConfig(com.yahoo.bullet.common.BulletConfig) Test(org.testng.annotations.Test)

Example 12 with Query

use of com.yahoo.bullet.parsing.Query in project bullet-core by yahoo.

the class WindowingOperationsTest method testNotForcingNonRawToTumbling.

@Test
public void testNotForcingNonRawToTumbling() {
    BulletConfig config = new BulletConfig();
    Query query = new Query();
    Window window = WindowUtils.makeReactiveWindow();
    window.configure(config);
    query.setWindow(window);
    Aggregation aggregation = new Aggregation();
    aggregation.setType(Aggregation.Type.GROUP);
    query.setAggregation(aggregation);
    Assert.assertEquals(WindowingOperations.findScheme(query, null, config).getClass(), Reactive.class);
}
Also used : Window(com.yahoo.bullet.parsing.Window) Aggregation(com.yahoo.bullet.parsing.Aggregation) Query(com.yahoo.bullet.parsing.Query) BulletConfig(com.yahoo.bullet.common.BulletConfig) Test(org.testng.annotations.Test)

Example 13 with Query

use of com.yahoo.bullet.parsing.Query in project bullet-core by yahoo.

the class WindowingOperationsTest method testAdditiveTumblingWindow.

@Test
public void testAdditiveTumblingWindow() {
    BulletConfig config = new BulletConfig();
    Query query = new Query();
    Window window = WindowUtils.makeWindow(Window.Unit.TIME, 1000, Window.Unit.ALL, null);
    window.configure(config);
    query.setWindow(window);
    Aggregation aggregation = new Aggregation();
    aggregation.setType(Aggregation.Type.GROUP);
    query.setAggregation(aggregation);
    Assert.assertEquals(WindowingOperations.findScheme(query, null, config).getClass(), AdditiveTumbling.class);
}
Also used : Window(com.yahoo.bullet.parsing.Window) Aggregation(com.yahoo.bullet.parsing.Aggregation) Query(com.yahoo.bullet.parsing.Query) BulletConfig(com.yahoo.bullet.common.BulletConfig) Test(org.testng.annotations.Test)

Example 14 with Query

use of com.yahoo.bullet.parsing.Query in project bullet-core by yahoo.

the class WindowingOperationsTest method testOtherWindowsForcedToTumbling.

@Test
public void testOtherWindowsForcedToTumbling() {
    BulletConfig config = new BulletConfig();
    Query query = new Query();
    Window window = WindowUtils.makeWindow(Window.Unit.TIME, 1000, Window.Unit.RECORD, 4);
    window.configure(config);
    query.setWindow(window);
    Aggregation aggregation = new Aggregation();
    aggregation.setType(Aggregation.Type.COUNT_DISTINCT);
    query.setAggregation(aggregation);
    Assert.assertEquals(WindowingOperations.findScheme(query, null, config).getClass(), Tumbling.class);
}
Also used : Window(com.yahoo.bullet.parsing.Window) Aggregation(com.yahoo.bullet.parsing.Aggregation) Query(com.yahoo.bullet.parsing.Query) BulletConfig(com.yahoo.bullet.common.BulletConfig) Test(org.testng.annotations.Test)

Example 15 with Query

use of com.yahoo.bullet.parsing.Query in project bullet-core by yahoo.

the class WindowingOperationsTest method testRawReactiveWindow.

@Test
public void testRawReactiveWindow() {
    BulletConfig config = new BulletConfig();
    Query query = new Query();
    Window window = WindowUtils.makeReactiveWindow();
    window.configure(config);
    query.setWindow(window);
    Aggregation aggregation = new Aggregation();
    aggregation.setType(Aggregation.Type.RAW);
    query.setAggregation(aggregation);
    Assert.assertEquals(WindowingOperations.findScheme(query, null, config).getClass(), Reactive.class);
}
Also used : Window(com.yahoo.bullet.parsing.Window) Aggregation(com.yahoo.bullet.parsing.Aggregation) Query(com.yahoo.bullet.parsing.Query) BulletConfig(com.yahoo.bullet.common.BulletConfig) Test(org.testng.annotations.Test)

Aggregations

Query (com.yahoo.bullet.parsing.Query)24 Test (org.testng.annotations.Test)22 BulletConfig (com.yahoo.bullet.common.BulletConfig)20 QueryUtils.makeAggregationQuery (com.yahoo.bullet.parsing.QueryUtils.makeAggregationQuery)16 QueryUtils.makeProjectionFilterQuery (com.yahoo.bullet.parsing.QueryUtils.makeProjectionFilterQuery)14 QueryUtils.makeRawFullQuery (com.yahoo.bullet.parsing.QueryUtils.makeRawFullQuery)14 Aggregation (com.yahoo.bullet.parsing.Aggregation)12 Window (com.yahoo.bullet.parsing.Window)6 List (java.util.List)4 Booleans.asList (com.google.common.primitives.Booleans.asList)3 ArrayList (java.util.ArrayList)3 Collections.emptyList (java.util.Collections.emptyList)3 Collections.singletonList (java.util.Collections.singletonList)3 BulletRecord (com.yahoo.bullet.record.BulletRecord)2 Strategy (com.yahoo.bullet.aggregations.Strategy)1 BulletError (com.yahoo.bullet.common.BulletError)1 Clip (com.yahoo.bullet.result.Clip)1 Meta (com.yahoo.bullet.result.Meta)1