public void Configure_WithBaseConfig_ConfigurationMerged()
        {
            var baseConfig = new KafkaClientConfig
            {
                BootstrapServers = "PLAINTEXT://tests",
                MessageMaxBytes  = 42
            };
            var builder = new KafkaProducerEndpointBuilder(baseConfig);

            builder
            .ProduceTo("some-topic")
            .Configure(
                config =>
            {
                config.ThrowIfNotAcknowledged = false;
                config.MessageTimeoutMs       = 42;
                config.MessageMaxBytes        = 4242;
            });
            var endpoint = builder.Build();

            endpoint.Configuration.BootstrapServers.Should().Be("PLAINTEXT://tests");
            endpoint.Configuration.ThrowIfNotAcknowledged.Should().BeFalse();
            endpoint.Configuration.MessageTimeoutMs.Should().Be(42);
            endpoint.Configuration.MessageMaxBytes.Should().Be(4242);
            baseConfig.MessageMaxBytes.Should().Be(42);
        }
        public void Configure_WithBaseConfig_ConfigurationMerged()
        {
            var baseConfig = new KafkaClientConfig
            {
                BootstrapServers = "PLAINTEXT://tests",
                MessageMaxBytes  = 42
            };
            var builder = new KafkaConsumerEndpointBuilder(baseConfig);

            builder
            .ConsumeFrom("topic")
            .Configure(
                config =>
            {
                config.EnableAutoCommit = false;
                config.CommitOffsetEach = 42;
                config.GroupId          = "group1";
                config.MessageMaxBytes  = 4242;
            });
            var endpoint = builder.Build();

            endpoint.Configuration.BootstrapServers.Should().Be("PLAINTEXT://tests");
            endpoint.Configuration.EnableAutoCommit.Should().Be(false);
            endpoint.Configuration.CommitOffsetEach.Should().Be(42);
            endpoint.Configuration.GroupId.Should().Be("group1");
            endpoint.Configuration.MessageMaxBytes.Should().Be(4242);
            baseConfig.MessageMaxBytes.Should().Be(42);
        }