use of org.zalando.nakadi.domain.Timeline in project nakadi by zalando.
the class VersionOneConverterTest method testFormatOffset.
@Test
public void testFormatOffset() {
final Timeline timeline = mock(Timeline.class);
when(timeline.getOrder()).thenReturn(15);
when(timeline.getStorage()).thenReturn(new Storage("", Storage.Type.KAFKA));
final NakadiCursor cursor = NakadiCursor.of(timeline, "x", "012345");
Assert.assertEquals("001-000f-012345", new VersionOneConverter(null).formatOffset(cursor));
}
use of org.zalando.nakadi.domain.Timeline in project nakadi by zalando.
the class CursorOperationsServiceTest method shiftCursorRightToNextTimeline.
@Test
public void shiftCursorRightToNextTimeline() throws Exception {
final Timeline initialTimeline = mockTimeline(1, 10L);
final Timeline nextTimeline = mockTimeline(2, 3L);
final ShiftedNakadiCursor shiftedCursor = new ShiftedNakadiCursor(initialTimeline, "0", "000000000000000003", 9L);
mockTimelines(initialTimeline, nextTimeline);
final NakadiCursor cursor = service.unshiftCursor(shiftedCursor);
assertThat(cursor.getTimeline().getOrder(), equalTo(2));
assertThat(cursor.getOffset(), equalTo("000000000000000001"));
}
use of org.zalando.nakadi.domain.Timeline in project nakadi by zalando.
the class CursorOperationsServiceTest method calculateDistanceWhenTimelineInTheFutureAndDoesntExist.
@Test
public void calculateDistanceWhenTimelineInTheFutureAndDoesntExist() throws Exception {
final Timeline initialTimeline = mockTimeline(1, 10L);
final Timeline finalTimeline = mockTimeline(2, 0L);
final Timeline futureTimeline = mockTimeline(4, 0L);
mockTimelines(initialTimeline, finalTimeline);
final NakadiCursor initialCursor = NakadiCursor.of(finalTimeline, "0", "0000000000000001");
final NakadiCursor finalCursor = NakadiCursor.of(futureTimeline, "0", "0000000000000002");
expectException(initialCursor, finalCursor, TIMELINE_NOT_FOUND);
}
use of org.zalando.nakadi.domain.Timeline in project nakadi by zalando.
the class CursorOperationsServiceTest method whenCursorTimelinesAreInvertedThenNegativeDistance.
@Test
public void whenCursorTimelinesAreInvertedThenNegativeDistance() throws Exception {
final Timeline initialTimeline = mockTimeline(1, 7L);
final Timeline intermediaryTimeline = mockTimeline(2, 9L);
final Timeline finalTimeline = mockTimeline(3, 5L);
final NakadiCursor initialCursor = NakadiCursor.of(initialTimeline, "0", "0000000000000001");
final NakadiCursor finalCursor = NakadiCursor.of(finalTimeline, "0", "0000000000000003");
mockTimelines(initialTimeline, intermediaryTimeline, finalTimeline);
final Long distance = service.calculateDistance(finalCursor, initialCursor);
// Carefully calculated value
assertThat(distance, equalTo(-20L));
}
use of org.zalando.nakadi.domain.Timeline in project nakadi by zalando.
the class CursorOperationsServiceTest method missingPartitionInTimeline.
@Test
public void missingPartitionInTimeline() throws Exception {
final Timeline initialTimeline = mockTimeline(0, 10L);
final Timeline intermediaryTimeline = mockTimeline(1, 9L);
final Timeline finalTimeline = mockTimeline(2, 0L);
mockTimelines(initialTimeline, intermediaryTimeline, finalTimeline);
final NakadiCursor initialCursor = NakadiCursor.of(initialTimeline, "1", "0000000000000003");
final NakadiCursor finalCursor = NakadiCursor.of(finalTimeline, "1", "0000000000000001");
expectException(initialCursor, finalCursor, PARTITION_NOT_FOUND);
}
Aggregations