public void When_Create_Builder_With_Logger_Factory_Should_Create_Logger() { _loggerFactoryMock.Invocations.Clear(); var amqpBuilder = new RabbitMqBuilder(_configMock.Object, _loggerFactoryMock.Object, _messagingWorkersFactoryMock.Object) { ConnectionFactory = _connectionFactoryMock.Object }; _loggerFactoryMock.Verify(l => l.CreateLogger(LoggerName), Times.Once); }
public void Subscribe() { var settingsMock = RabbitMqSettingsTest.GetSettingsMock(); var senderBuilder = new RabbitMqBuilder(settingsMock.Object); senderBuilder.Subscribe(async(DummyClass x) => { }); senderBuilder.Subscribe(async(DummyClass1 x) => { }); //TODO Implement good tests }
public async void SendReceive_ThrowRetry() { var rabbitMqSettings = new RabbitMqSettings( "localhost", "guest", "guest", "LessPaper.Shared.Queueing.IntegrationTest.2"); var counter = 0; var lockObj = new object(); var successfulCalled = new AutoResetEvent(false); var exampleText = "Some data"; var builder = new RabbitMqBuilder(rabbitMqSettings); var finalized = await builder .Subscribe(async delegate(DummyClass dto) { if (dto.DummyProperty == exampleText) { lock (lockObj) { counter += 1; switch (counter) { case 2: successfulCalled.Set(); break; case 1: throw new Exception("Test exception"); } } } else { Assert.True(false, "Wrong data received"); } }) .Start(); var myObj = new DummyClass() { DummyProperty = exampleText }; await finalized.Send(myObj); // Wait for receiving Assert.True(successfulCalled.WaitOne(TimeSpan.FromSeconds(5))); await finalized.Stop(); }
public void When_Create_Builder_Without_Connection_Factory_Should_Get_RabbitUrlKey_Configuration_Value() { _configMock.Invocations.Clear(); try { var amqpBuilder = new RabbitMqBuilder(_configMock.Object, _loggerFactoryMock.Object, _messagingWorkersFactoryMock.Object); } catch //Should throws exception because the new ConnectionFactory could not CreateConnection. { _configMock.Verify(s => s.GetSection(EnvironmentConstants.MessageBrokerUrl), Times.Once); } }
public RabbitMqBuilderTest() { const MockBehavior mockBehavior = MockBehavior.Strict; SetupLoggerMock(mockBehavior); SetupLoggerFactoryMock(mockBehavior); SetupConnectionMock(mockBehavior); SetupConnectionFactoryMock(mockBehavior); SetupSettingsMock(mockBehavior); SetupMessagingWorkersFactoryMock(mockBehavior); _builder = new RabbitMqBuilder(_configMock.Object, _loggerFactoryMock.Object, _messagingWorkersFactoryMock.Object) { ConnectionFactory = _connectionFactoryMock.Object }; }
public async void SendReceiveSingle() { var rabbitMqSettings = new RabbitMqSettings( "localhost", "guest", "guest", "LessPaper.Shared.Queueing.IntegrationTest.1"); var successfulCalled = new AutoResetEvent(false); var exampleText = "Some data"; var builder = new RabbitMqBuilder(rabbitMqSettings); var finalized = await builder .Subscribe(async delegate(DummyClass dto) { if (dto.DummyProperty == exampleText) { successfulCalled.Set(); } }) .Start(); var myObj = new DummyClass() { DummyProperty = exampleText }; await finalized.Send(myObj); // Wait for receiving Assert.True(successfulCalled.WaitOne(2000)); await finalized.Stop(); }