public void DeserializeAvro_WithoutType_ExceptionThrown() { var builder = new TestConsumerEndpointBuilder(); Action act = () => builder.DeserializeAvro(); act.Should().Throw <InvalidOperationException>(); }
public void DeserializeJson_WithSetMessageType_TypedSerializerSet() { var builder = new TestConsumerEndpointBuilder(typeof(TestEventOne)); var endpoint = builder.DeserializeJson().Build(); endpoint.Serializer.Should().BeOfType <JsonMessageSerializer <TestEventOne> >(); }
public void WithSequenceTimeout_Timeout_SequenceTimeoutSet() { var builder = new TestConsumerEndpointBuilder(); var endpoint = builder.WithSequenceTimeout(TimeSpan.FromMinutes(42)).Build(); endpoint.Sequence.Timeout.Should().Be(TimeSpan.FromMinutes(42)); }
public void ThrowIfUnhandled_ThrowIfUnhandledSet() { var builder = new TestConsumerEndpointBuilder(); var endpoint = builder.ThrowIfUnhandled().Build(); endpoint.ThrowIfUnhandled.Should().Be(true); }
public void ValidateMessage_ThrowException_MessageValidationModeIsThrowException() { var builder = new TestConsumerEndpointBuilder(); var endpoint = builder.ValidateMessage(true).Build(); endpoint.MessageValidationMode.Should().Be(MessageValidationMode.ThrowException); }
public void DisableMessageValidation_MessageValidationMode_IsNone() { var builder = new TestConsumerEndpointBuilder(); var endpoint = builder.DisableMessageValidation().Build(); endpoint.MessageValidationMode.Should().Be(MessageValidationMode.None); }
public void ValidateMessage_NoThrowException_MessageValidationModeIsLogWarning() { var builder = new TestConsumerEndpointBuilder(); var endpoint = builder.ValidateMessage(false).Build(); endpoint.MessageValidationMode.Should().Be(MessageValidationMode.LogWarning); }
public void MessageValidationMode_ByDefault_IsLogWarning() { var builder = new TestConsumerEndpointBuilder(); var endpoint = builder.Build(); endpoint.MessageValidationMode.Should().Be(MessageValidationMode.LogWarning); }
public void OnError_ErrorPolicyBuildAction_ErrorPolicySet() { var builder = new TestConsumerEndpointBuilder(); var endpoint = builder.OnError(errorPolicy => errorPolicy.Retry(5).ThenSkip()).Build(); endpoint.ErrorPolicy.Should().BeOfType <ErrorPolicyChain>(); }
public void EnsureExactlyOnce_StrategyBuildAction_ExactlyOnceStrategySet() { var builder = new TestConsumerEndpointBuilder(); var endpoint = builder.EnsureExactlyOnce(strategy => strategy.StoreOffsets()).Build(); endpoint.ExactlyOnceStrategy.Should().BeOfType <OffsetStoreExactlyOnceStrategy>(); }
public void WithName_DisplayNameSet() { var builder = new TestConsumerEndpointBuilder(); var endpoint = builder.WithName("display-name").Build(); endpoint.DisplayName.Should().Be("display-name (test)"); }
public void EnableBatchProcessing_InvalidBatchSize_ExceptionThrown(int size) { var builder = new TestConsumerEndpointBuilder(); Action act = () => builder.EnableBatchProcessing(size).Build(); act.Should().ThrowExactly <ArgumentOutOfRangeException>(); }
public void IgnoreUnhandledMessages_ThrowIfUnhandledSet() { var builder = new TestConsumerEndpointBuilder(); var endpoint = builder.IgnoreUnhandledMessages().Build(); endpoint.ThrowIfUnhandled.Should().Be(false); }
public void Build_InvalidConfiguration_ExceptionThrown() { var builder = new TestConsumerEndpointBuilder(); Action act = () => builder.Decrypt(new SymmetricEncryptionSettings()).Build(); act.Should().ThrowExactly <EndpointConfigurationException>(); }
public void SkipNullMessages_NullMessageHandlingSet() { var builder = new TestConsumerEndpointBuilder(); var endpoint = builder.SkipNullMessages().Build(); endpoint.NullMessageHandlingStrategy.Should().Be(NullMessageHandlingStrategy.Skip); }
public void UseLegacyNullMessageHandling_NullMessageHandlingSet() { var builder = new TestConsumerEndpointBuilder(); var endpoint = builder.UseLegacyNullMessageHandling().Build(); endpoint.NullMessageHandlingStrategy.Should().Be(NullMessageHandlingStrategy.Legacy); }
public void HandleTombstoneMessages_NullMessageHandlingSet() { var builder = new TestConsumerEndpointBuilder(); var endpoint = builder.HandleTombstoneMessages().Build(); endpoint.NullMessageHandlingStrategy.Should().Be(NullMessageHandlingStrategy.Tombstone); }
public void DeserializeJson_UseFixedType_SerializerSet() { var builder = new TestConsumerEndpointBuilder(); var endpoint = builder.DeserializeJson(serializer => serializer.UseFixedType <TestEventOne>()).Build(); endpoint.Serializer.Should().BeOfType <JsonMessageSerializer <TestEventOne> >(); }
public void DeserializeUsing_Serializer_SerializerSet() { var builder = new TestConsumerEndpointBuilder(); var serializer = new BinaryFileMessageSerializer(); var endpoint = builder.DeserializeUsing(serializer).Build(); endpoint.Serializer.Should().BeSameAs(serializer); }
public void DeserializeJsonUsingNewtonsoft_Default_SerializerSet() { var builder = new TestConsumerEndpointBuilder(); var endpoint = builder.DeserializeJsonUsingNewtonsoft().Build(); endpoint.Serializer.Should().BeOfType <NewtonsoftJsonMessageSerializer>(); endpoint.Serializer.Should().NotBeSameAs(NewtonsoftJsonMessageSerializer.Default); }
public void ConsumeBinaryFiles_UseModel_SerializerSet() { var builder = new TestConsumerEndpointBuilder(); var endpoint = builder.ConsumeBinaryFiles(serializer => serializer.UseModel <CustomBinaryFileMessage>()) .Build(); endpoint.Serializer.Should().BeOfType <BinaryFileMessageSerializer <CustomBinaryFileMessage> >(); }
public void OnError_ErrorPolicy_ErrorPolicySet() { var builder = new TestConsumerEndpointBuilder(); var errorPolicy = new RetryErrorPolicy(); var endpoint = builder.OnError(errorPolicy).Build(); endpoint.ErrorPolicy.Should().BeSameAs(errorPolicy); }
public void ConsumeBinaryFiles_Default_SerializerSet() { var builder = new TestConsumerEndpointBuilder(); var endpoint = builder.ConsumeBinaryFiles().Build(); endpoint.Serializer.Should().BeOfType <BinaryFileMessageSerializer>(); endpoint.Serializer.Should().NotBeSameAs(BinaryFileMessageSerializer.Default); }
public void DeserializeAvro_Default_SerializerSet() { var builder = new TestConsumerEndpointBuilder(); var endpoint = builder.DeserializeAvro(serializer => serializer.UseType <TestEventOne>()) .Build(); endpoint.Serializer.Should().BeOfType <AvroMessageSerializer <TestEventOne> >(); }
public void EnsureExactlyOnce_Strategy_ExactlyOnceStrategySet() { var builder = new TestConsumerEndpointBuilder(); var strategy = new OffsetStoreExactlyOnceStrategy(); var endpoint = builder.EnsureExactlyOnce(strategy).Build(); endpoint.ExactlyOnceStrategy.Should().BeSameAs(strategy); }
public void EnableBatchProcessing_ValidBatchSettings_BatchSettingsSet(int size) { var builder = new TestConsumerEndpointBuilder(); var endpoint = builder.EnableBatchProcessing(size, TimeSpan.FromMinutes(42)).Build(); endpoint.Batch.Should().NotBeNull(); endpoint.Batch !.Size.Should().Be(size); endpoint.Batch !.MaxWaitTime.Should().Be(TimeSpan.FromMinutes(42)); }
public void DeserializeJsonUsingNewtonsoft_Configure_SerializerAndOptionsSet() { var builder = new TestConsumerEndpointBuilder(); var endpoint = builder.DeserializeJsonUsingNewtonsoft( serializer => serializer.Configure(settings => { settings.MaxDepth = 42; })).Build(); endpoint.Serializer.Should().BeOfType <NewtonsoftJsonMessageSerializer>(); endpoint.Serializer.As <NewtonsoftJsonMessageSerializer>().Settings.MaxDepth.Should().Be(42); }
public void DeserializeJsonUsingNewtonsoft_WithEncoding_SerializerAndEncodingSet() { var builder = new TestConsumerEndpointBuilder(); var endpoint = builder.DeserializeJsonUsingNewtonsoft( serializer => serializer.WithEncoding(MessageEncoding.Unicode)).Build(); endpoint.Serializer.Should().BeOfType <NewtonsoftJsonMessageSerializer>(); endpoint.Serializer.As <NewtonsoftJsonMessageSerializer>().Encoding.Should().Be(MessageEncoding.Unicode); }
public void DeserializeJsonUsingNewtonsoft_UseFixedType_SerializerSet() { var builder = new TestConsumerEndpointBuilder(); var endpoint = builder .DeserializeJsonUsingNewtonsoft(serializer => serializer.UseFixedType(typeof(TestEventOne))) .Build(); endpoint.Serializer.Should().BeOfType <NewtonsoftJsonMessageSerializer <TestEventOne> >(); }
public void DecryptUsingAes_WithKeyAndIV_EncryptionSettingsSet() { var builder = new TestConsumerEndpointBuilder(); var key = new byte[] { 0x01, 0x02, 0x03, 0x04, 0x05 }; var iv = new byte[] { 0x11, 0x12, 0x13, 0x14, 0x15 }; TestConsumerEndpoint endpoint = builder.DecryptUsingAes(key, iv).Build(); endpoint.Encryption.Should().BeOfType <SymmetricDecryptionSettings>(); endpoint.Encryption.As <SymmetricDecryptionSettings>().Key.Should().BeSameAs(key); endpoint.Encryption.As <SymmetricDecryptionSettings>().InitializationVector.Should().BeSameAs(iv); }