@Test
public void lifecycleStartStartsBatchEmitter() {
BatchEmitter batchEmitter = mock(BatchEmitter.class);
BatchEmitterServiceProvider batchEmitterFactory = new TestBatchEmitterFactory() {
@Override
public BatchEmitter createInstance(int batchSize, int deliveryInterval, ClientObjectFactory clientObjectFactory, FailoverPolicy failoverPolicy) {
return batchEmitter;
}
};
TestAsyncBatchDelivery batchDelivery = spy(new TestAsyncBatchDelivery(
TEST_BATCH_SIZE,
TEST_DELIVERY_INTERVAL,
createTestObjectFactoryBuilder().build(),
new NoopFailoverPolicy(),
null) {
@Override
protected BatchEmitterServiceProvider createBatchEmitterServiceProvider() {
return batchEmitterFactory;
}
});
batchDelivery.start();
verify(batchEmitter).start();
}