Search in sources :

Example 6 with MockStrategy

use of com.yahoo.bullet.aggregations.MockStrategy in project bullet-core by yahoo.

the class SlidingRecordTest method testReachingWindowSizeOnCombine.

@Test
public void testReachingWindowSizeOnCombine() {
    Window window = makeSlidingWindow(10);
    SlidingRecord sliding = new SlidingRecord(strategy, window, config);
    Assert.assertFalse(sliding.initialize().isPresent());
    Assert.assertFalse(sliding.isClosed());
    Assert.assertFalse(sliding.isClosedForPartition());
    for (int i = 0; i < 6; ++i) {
        sliding.consume(RecordBox.get().getRecord());
        Assert.assertFalse(sliding.isClosed());
        Assert.assertTrue(sliding.isClosedForPartition());
    }
    Assert.assertEquals(strategy.getConsumeCalls(), 6);
    byte[] data = sliding.getData();
    // Remake
    strategy = new MockStrategy();
    sliding = new SlidingRecord(strategy, window, config);
    Assert.assertFalse(sliding.initialize().isPresent());
    // Combine in the old data
    sliding.combine(data);
    for (int i = 0; i < 3; ++i) {
        sliding.consume(RecordBox.get().getRecord());
        Assert.assertFalse(sliding.isClosed());
        Assert.assertTrue(sliding.isClosedForPartition());
    }
    Assert.assertFalse(sliding.isClosed());
    Assert.assertTrue(sliding.isClosedForPartition());
    sliding.consume(RecordBox.get().getRecord());
    Assert.assertTrue(sliding.isClosed());
    Assert.assertTrue(sliding.isClosedForPartition());
    Assert.assertEquals(strategy.getConsumeCalls(), 4);
    Assert.assertEquals(strategy.getCombineCalls(), 1);
}
Also used : Window(com.yahoo.bullet.parsing.Window) MockStrategy(com.yahoo.bullet.aggregations.MockStrategy) Test(org.testng.annotations.Test)

Example 7 with MockStrategy

use of com.yahoo.bullet.aggregations.MockStrategy in project bullet-core by yahoo.

the class TumblingTest method setup.

@BeforeMethod
private void setup() {
    strategy = new MockStrategy();
    config = new BulletConfig();
    addMetadata(config, ALL_METADATA);
}
Also used : MockStrategy(com.yahoo.bullet.aggregations.MockStrategy) BulletConfig(com.yahoo.bullet.common.BulletConfig) BeforeMethod(org.testng.annotations.BeforeMethod)

Aggregations

MockStrategy (com.yahoo.bullet.aggregations.MockStrategy)7 BulletConfig (com.yahoo.bullet.common.BulletConfig)5 BeforeMethod (org.testng.annotations.BeforeMethod)5 Window (com.yahoo.bullet.parsing.Window)2 Test (org.testng.annotations.Test)2