Skip to content

Commit

Permalink
Add tests for Memory<byte>?
Browse files Browse the repository at this point in the history
  • Loading branch information
verdie-g committed Sep 15, 2024
1 parent a6a6912 commit f0a45e6
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 14 deletions.
8 changes: 4 additions & 4 deletions src/Confluent.Kafka/Producer.cs
Original file line number Diff line number Diff line change
Expand Up @@ -791,7 +791,7 @@ public async Task<DeliveryResult<TKey, TValue>> ProduceAsync(
{
keyBytes = readOnlyMemory;
}
else // Nullable Memory<byte>
else // Null Memory<byte>?
{
keyBytes = null;
}
Expand Down Expand Up @@ -829,7 +829,7 @@ public async Task<DeliveryResult<TKey, TValue>> ProduceAsync(
{
valBytes = readOnlyMemory;
}
else // Nullable Memory<byte>
else // Null Memory<byte>?
{
valBytes = null;
}
Expand Down Expand Up @@ -951,7 +951,7 @@ public void Produce(
{
keyBytes = readOnlyMemory;
}
else // Nullable Memory<byte>
else // Null Memory<byte>?
{
keyBytes = null;
}
Expand Down Expand Up @@ -988,7 +988,7 @@ public void Produce(
{
valBytes = readOnlyMemory;
}
else // Nullable Memory<byte>
else // Null Memory<byte>?
{
valBytes = null;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -69,23 +69,23 @@ public void Producer_Produce_Memory_Async(string bootstrapServers)
var producerConfig = new ProducerConfig { BootstrapServers = bootstrapServers };

using (var testTopic = new TemporaryTopic(bootstrapServers, 1))
using (var producer = new TestProducerBuilder<Null, Memory<byte>>(producerConfig)
using (var producer = new TestProducerBuilder<Memory<byte>?, Memory<byte>>(producerConfig)
.Build())
using (var dProducer = new DependentProducerBuilder<ReadOnlyMemory<byte>, Null>(producer.Handle)
using (var dProducer = new DependentProducerBuilder<ReadOnlyMemory<byte>, ReadOnlyMemory<byte>?>(producer.Handle)
.Build())
{
Memory<byte> data = new byte[] { 1, 2, 3, 4 };
Assert.Throws<ProduceException<Null, Memory<byte>>>(
() => producer.Produce(testTopic.Name, new Message<Null, Memory<byte>> { Value = data }));
Assert.Throws<ProduceException<Memory<byte>?, Memory<byte>>>(
() => producer.Produce(testTopic.Name, new Message<Memory<byte>?, Memory<byte>> { Value = data }));

Assert.Throws<ProduceException<Null, Memory<byte>>>(
() => producer.Produce(testTopic.Name, new Message<Null, Memory<byte>> { Value = data }, dr => { Assert.True(false); }));
Assert.Throws<ProduceException<Memory<byte>?, Memory<byte>>>(
() => producer.Produce(testTopic.Name, new Message<Memory<byte>?, Memory<byte>> { Value = data }, dr => { Assert.True(false); }));

Assert.Throws<ProduceException<ReadOnlyMemory<byte>, Null>>(
() => dProducer.Produce(testTopic.Name, new Message<ReadOnlyMemory<byte>, Null> { Key = data }));
Assert.Throws<ProduceException<ReadOnlyMemory<byte>, ReadOnlyMemory<byte>?>>(
() => dProducer.Produce(testTopic.Name, new Message<ReadOnlyMemory<byte>, ReadOnlyMemory<byte>?> { Key = data }));

Assert.Throws<ProduceException<ReadOnlyMemory<byte>, Null>>(
() => dProducer.Produce(testTopic.Name, new Message<ReadOnlyMemory<byte>, Null> { Key = data }, dr => { Assert.True(false); }));
Assert.Throws<ProduceException<ReadOnlyMemory<byte>, ReadOnlyMemory<byte>?>>(
() => dProducer.Produce(testTopic.Name, new Message<ReadOnlyMemory<byte>, ReadOnlyMemory<byte>?> { Key = data }, dr => { Assert.True(false); }));
}

Assert.Equal(0, Library.HandleCount);
Expand Down

0 comments on commit f0a45e6

Please sign in to comment.