public void DoubleStopShouldNotCauseErrorTest() { var model = new Mock <IModel>(); var consumer = new Mock <IConsumer>(); var actor = new Mock <IActorRef>(); var test = new StreamSubscriber(model.Object, consumer.Object, actor.Object); model.Setup(x => x.BasicConsume("test", true, consumer.Object.Id, false, false, null, test)).Callback(() => { }); test.StartConsuming("test"); test.StopConsuming(); test.StopConsuming(); }
public void StopConsumingShouldNotLogWarnWhenAlreadyClosedConnectionTest() { var model = new Mock <IModel>(); var consumer = new Mock <IConsumer>(); var actor = new Mock <IActorRef>(); var logger = new Mock <ILog>(); consumer.SetupGet(c => c.Id).Returns("Consumer1Id"); var test = new StreamSubscriber(model.Object, consumer.Object, actor.Object); var loggerField = test.GetType().GetField("_logger", BindingFlags.Instance | BindingFlags.NonPublic); loggerField.SetValue(test, logger.Object); model.Setup(x => x.BasicConsume("test", true, consumer.Object.Id, false, false, null, test)).Callback(() => { }); test.StartConsuming("test"); model.SetupGet(m => m.IsClosed).Returns(true); model.Setup(x => x.BasicCancel(consumer.Object.Id)).Callback(() => { throw new AlreadyClosedException( new ShutdownEventArgs(ShutdownInitiator.Application, 0, "Already closed")); }); test.StopConsuming(); logger.Verify( l => l.Warn(It.Is <string>( msg => msg.StartsWith($"Connection already closed for consumerId={consumer.Object.Id}"))), Times.Never, "Connection already closed warning should not be logged."); }
public void StopShouldsENDdIApatchesRemoveMessageTest() { var model = new Mock <IModel>(); var consumer = new Mock <IConsumer>(); var actor = new Mock <IActorRef>(); var test = new StreamSubscriber(model.Object, consumer.Object, actor.Object); model.Setup(x => x.BasicConsume("test", true, consumer.Object.Id, false, false, null, test)).Callback(() => { }); //test.IsDisposed.Should().Be(false); test.StartConsuming("test"); test.StopConsuming(); //TODO check RemoveSubscriberMessage }