internal void TestDelayedBasicAckNackAfterChannelRecovery(TestBasicConsumer1 cons, ManualResetEventSlim latch)
        {
            string q = _model.QueueDeclare(GenerateQueueName(), false, false, false, null).QueueName;
            int    n = 30;

            _model.BasicQos(0, 1, false);
            _model.BasicConsume(q, false, cons);

            AutorecoveringConnection publishingConn = CreateAutorecoveringConnection();
            IModel publishingModel = publishingConn.CreateModel();

            for (int i = 0; i < n; i++)
            {
                publishingModel.BasicPublish("", q, null, _encoding.GetBytes(""));
            }

            Wait(latch, TimeSpan.FromSeconds(20));
            _model.QueueDelete(q);
            publishingModel.Close();
            publishingConn.Close();
        }
        protected void TestDelayedBasicAckNackAfterChannelRecovery(TestBasicConsumer1 cons, AutoResetEvent latch)
        {
            var q = Model.QueueDeclare(GenerateQueueName(), false, false, false, null).QueueName;
            var n = 30;

            Model.BasicQos(0, 1, false);
            Model.BasicConsume(q, false, cons);

            var publishingConn  = CreateAutorecoveringConnection();
            var publishingModel = publishingConn.CreateModel();

            for (var i = 0; i < n; i++)
            {
                publishingModel.BasicPublish("", q, null, enc.GetBytes(""));
            }

            Wait(latch, TimeSpan.FromSeconds(20));
            Model.QueueDelete(q);
            publishingModel.Close();
            publishingConn.Close();
        }
        protected void TestDelayedBasicAckNackAfterChannelRecovery(TestBasicConsumer1 cons, ManualResetEvent latch)
        {
            string q = Model.QueueDeclare(GenerateQueueName(), false, false, false, null).QueueName;
            int n = 30;
            Model.BasicQos(0, 1, false);
            Model.BasicConsume(q, false, cons);

            AutorecoveringConnection publishingConn = CreateAutorecoveringConnection();
            IModel publishingModel = publishingConn.CreateModel();

            for (int i = 0; i < n; i++)
            {
                publishingModel.BasicPublish("", q, null, encoding.GetBytes(""));
            }

            Wait(latch, TimeSpan.FromSeconds(20));
            Model.QueueDelete(q);
            publishingModel.Close();
            publishingConn.Close();
        }