public void Close_Where_No_Pending_Publications_Which_Results_In_A_Context_Transition_To_Closed() { var _busConfigurationBuilder = new BusConfigurationBuilder(); _busConfigurationBuilder.ConnectionUris.Add(TestingConfiguration.LocalConnectionUri); _busConfigurationBuilder .RegisterPublication <MyEvent>( TestingConfiguration.ExchangeName, typeof(MyEvent).Name); var _busConfirguration = _busConfigurationBuilder.Build(); var _connectionManager = Substitute.For <IConnectionManager>(); var _connection = Substitute.For <IConnection>(); var _channel = Substitute.For <IModel>(); var _context = Substitute.For <IBusContext>(); _connectionManager.Connection.Returns(_connection); _connection.CreateModel().Returns(_channel); var _SUT = new Connected( _busConfirguration, _connectionManager, _context); _context.State.Returns(callInfo => _SUT); State _capturedState = null; _context.When(context => context.State = Arg.Any <State>()).Do(callInfo => _capturedState = callInfo[0] as State); _SUT.Close(); Assert.IsInstanceOf <Closed>(_capturedState); }
public void Close_Where_No_Pending_Publications_Which_Results_In_A_Context_Transition_To_Closed() { var _busConfigurationBuilder = new BusConfigurationBuilder(); _busConfigurationBuilder.ConnectionUris.Add(TestingConfiguration.LocalConnectionUri); _busConfigurationBuilder .RegisterPublication<MyEvent>( TestingConfiguration.ExchangeName, typeof(MyEvent).Name); var _busConfirguration = _busConfigurationBuilder.Build(); var _connectionManager = Substitute.For<IConnectionManager>(); var _connection = Substitute.For<IConnection>(); var _channel = Substitute.For<IModel>(); var _context = Substitute.For<IBusContext>(); _connectionManager.Connection.Returns(_connection); _connection.CreateModel().Returns(_channel); var _SUT = new Connected( _busConfirguration, _connectionManager, _context); _context.State.Returns(callInfo => _SUT); State _capturedState = null; _context.When(context => context.State = Arg.Any<State>()).Do(callInfo => _capturedState = callInfo[0] as State); _SUT.Close(); Assert.IsInstanceOf<Closed>(_capturedState); }