private RabbitMQEventBus CreateEventbus() { _channelMock.Setup(x => x.ExchangeDeclare(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <bool>(), It.IsAny <bool>(), It.IsAny <IDictionary <string, object> >())) .Verifiable(); _channelMock.Setup(x => x.QueueDeclare(It.IsAny <string>(), It.IsAny <bool>(), It.IsAny <bool>(), It.IsAny <bool>(), It.IsAny <IDictionary <string, object> >())) .Returns((string queue, bool durable, bool exclusive, bool autoDelete, IDictionary <string, object> arguments) => new QueueDeclareOk(queue, 0, 1)) .Verifiable(); _channelMock.Setup(x => x.BasicConsume(It.IsAny <string>(), It.IsAny <bool>(), It.IsAny <string>(), It.IsAny <bool>(), It.IsAny <bool>(), It.IsAny <IDictionary <string, object> >(), It.IsAny <IBasicConsumer>())) .Returns("") .Verifiable(); _optionMock.SetupGet(x => x.Value) .Returns(RabbitMQOptionsProvider.CreateOptions()) .Verifiable(); _connectionMock.Setup(x => x.TryConnect()) .Returns(true) .Verifiable(); _connectionMock.SetupGet(x => x.IsConnected) .Returns(false) .Verifiable(); _connectionMock.Setup(x => x.CreateModel()) .Returns(_channelMock.Object) .Verifiable(); return(new RabbitMQEventBus(_connectionMock.Object, _loggerMock.Object, _optionMock.Object, _serviceProviderMock.Object, _diagnositcSource.Object)); }
public void TryConnect_StateUnderTest_ExpectedBehavior() { // Arrange _optionsMock.Setup(x => x.Value) .Returns(RabbitMQOptionsProvider.CreateOptions()) .Verifiable(); _loggerMock.Setup(x => x.Log(It.Is <LogLevel>(l => l == LogLevel.Information), It.IsAny <EventId>(), It.IsAny <object>(), It.IsAny <Exception>(), It.IsAny <Func <object, Exception, string> >())) .Verifiable(); var connectionMock = _mockRepository.Create <IConnection>(); connectionMock.Setup(x => x.IsOpen) .Returns(true) .Verifiable(); connectionMock.SetupGet(x => x.Endpoint) .Returns(new AmqpTcpEndpoint() { HostName = "host" }) .Verifiable(); _connectionFactoryMock.Setup(x => x.CreateConnection()) .Returns(connectionMock.Object) .Verifiable(); var tester = CreateRabbitMQPersistentConnection(); // Act var result = tester.TryConnect(); // Assert Assert.True(result); }