public void Equality() { var timestamp1 = new Timestamp(123456789, TimestampType.CreateTime); var timestamp2 = new Timestamp(-123456789, TimestampType.LogAppendTime); var tpt1 = new TopicPartitionTimestamp("a", 31, timestamp1); var tpt2 = new TopicPartitionTimestamp("a", 31, timestamp1); var list = new List <TopicPartitionTimestamp> { new TopicPartitionTimestamp("b", 31, timestamp1), new TopicPartitionTimestamp("a", 32, timestamp1), new TopicPartitionTimestamp("a", 31, timestamp2), }; Assert.Equal(tpt1, tpt2); Assert.True(tpt1.Equals(tpt2)); Assert.True(tpt1 == tpt2); Assert.False(tpt1 != tpt2); foreach (var item in list) { Assert.NotEqual(tpt1, item); Assert.False(tpt1.Equals(item)); Assert.False(tpt1 == item); Assert.True(tpt1 != item); } }
public void ToStringTest() { var timestamp = new Timestamp(123456789, TimestampType.CreateTime); var tpt = new TopicPartitionTimestamp("mytopic", 42, timestamp); Assert.Contains(tpt.Topic, tpt.ToString()); Assert.Contains(tpt.Partition.ToString(), tpt.ToString()); Assert.Contains(tpt.Timestamp.ToString(), tpt.ToString()); }
public void Constuctor() { var timestamp = new Timestamp(123456789, TimestampType.CreateTime); var tpt = new TopicPartitionTimestamp("mytopic", 42, timestamp); Assert.Equal("mytopic", tpt.Topic); Assert.Equal((Partition)42, tpt.Partition); Assert.Equal(tpt.Timestamp, timestamp); }
public void Properties() { var timestamp = new Timestamp(123456789, TimestampType.CreateTime); var tpt = new TopicPartitionTimestamp("mytopic", 42, timestamp); Assert.Equal(tpt.Topic, "mytopic"); Assert.Equal(tpt.Partition, 42); Assert.Equal(tpt.TopicPartition, new TopicPartition("mytopic", 42)); Assert.Equal(tpt.Timestamp, timestamp); }
private IEnumerable <TopicPartitionOffset> GetOffsets(string topic, DateTime date) { try { var timestampToSearch = new TopicPartitionTimestamp(topic, DefaultPartition, new Timestamp(date, TimestampType.CreateTime)); return(Consumer.OffsetsForTimes(new[] { timestampToSearch }, TimeSpan.FromSeconds(10)).Select(x => (TopicPartitionOffset)x)); } catch (KafkaException ex) { throw new EventReceivingException( $"Unexpected error occured while getting offset for date '{date:o}' " + $"in topic/partition '{topic}/{DefaultPartition}'", ex); } }