void clear() { buffer.clear(); }
@Test public void shouldClearPreviousChunks() { // GIVEN Consumer<long[]> consumer = mock( Consumer.class ); final AtomicBoolean safeThreshold = new AtomicBoolean( false ); DelayedBuffer<Long> buffer = new DelayedBuffer<>( singleton( 0L ), t -> safeThreshold.get(), 10, consumer ); // three chunks buffer.offer( 0 ); buffer.maintenance(); buffer.offer( 1 ); buffer.maintenance(); buffer.offer( 2 ); buffer.maintenance(); // WHEN safeThreshold.set( true ); buffer.clear(); buffer.maintenance(); // THEN verifyNoMoreInteractions( consumer ); }
@Test public void shouldClearCurrentChunk() { // GIVEN Consumer<long[]> consumer = mock( Consumer.class ); DelayedBuffer<Long> buffer = new DelayedBuffer<>( singleton( 0L ), Predicates.alwaysTrue(), 10, consumer ); buffer.offer( 0 ); buffer.offer( 1 ); buffer.offer( 2 ); // WHEN buffer.clear(); buffer.maintenance(); // THEN verifyNoMoreInteractions( consumer ); }
void clear() { buffer.clear(); }