public void Should_call_ack_on_nested_subscriptions_with_all_delivery_tag() { // Arrange var channel = Substitute.For<IModel>(); channel.IsOpen.Returns(true); var subs = new CompositeSubscription(); var subscription = new Subscription { ConsumerTag = "ConsumerTag", QueueName = "QueueName", SubscriptionName = "SubscriptionName" }; subscription.SetChannel(channel); subs.AddSubscription(subscription); // Action subs.Ack("ConsumerTag", new[] { (ulong)1, (ulong)2, (ulong)3, (ulong)4, (ulong)5 }); // Assert channel.Received().BasicAck(1, false); channel.Received().BasicAck(2, false); channel.Received().BasicAck(3, false); channel.Received().BasicAck(4, false); channel.Received().BasicAck(5, false); }
internal protected override void DoAck(BasicDeliverEventArgs basicDeliverEventArgs, IBasicConsumer subscriptionInfo) { if (IsDisposed) { return; } _subscription.Ack(basicDeliverEventArgs.ConsumerTag, basicDeliverEventArgs.DeliveryTag); }
internal void DoAck(BasicDeliverEventArgs basicDeliverEventArgs) { if (_disposed) { return; } _subscription.Ack(basicDeliverEventArgs.ConsumerTag, basicDeliverEventArgs.DeliveryTag); }
public void Should_call_ack_on_nested_subscriptions() { // Arrange var channel = Substitute.For<IModel>(); var subs = new CompositeSubscription(); var subscription = new Subscription { ConsumerTag = "ConsumerTag", QueueName = "QueueName", SubscriptionName = "SubscriptionName" }; subscription.SetChannel(channel); subs.AddSubscription(subscription); // Action subs.Ack("ConsumerTag", 1); // Assert channel.Received().BasicAck(1, false); }
public void Should_call_ack_on_nested_subscriptions_with_all_delivery_tag() { // Arrange var channel = Substitute.For<IModel>(); channel.IsOpen.Returns(true); var subs = new CompositeSubscription(); var subscription = new Subscription { ConsumerTag = "ConsumerTag", QueueName = "QueueName", SubscriptionName = "SubscriptionName" }; subscription.SetChannel(channel); subs.AddSubscription(subscription); // Action Subscription.OutstandingDeliveryTags["ConsumerTag"] = new List<ulong>(); Subscription.OutstandingDeliveryTags["ConsumerTag"].AddRange(new ulong[] { 1, 2, 3, 4, 5 }); subs.Ack("ConsumerTag", new[] { (ulong)1, (ulong)2, (ulong)3, (ulong)4, (ulong)5 }); // Assert channel.Received().BasicAck(5, true); }