public void AsEnumerableReturnsTheMessages()
        {
            var maximumSize = 5000;
            var options     = new CreateMessageBatchOptions {
                MaxSizeInBytes = maximumSize
            };
            var batchMessages = new ServiceBusMessage[5];

            var batch = new AmqpMessageBatch(options);

            for (var index = 0; index < batchMessages.Length; ++index)
            {
                batchMessages[index] = new ServiceBusMessage(new byte[0]);
                batch.TryAddMessage(batchMessages[index]);
            }

            IEnumerable <ServiceBusMessage> batchEnumerable = batch.AsEnumerable <ServiceBusMessage>();

            Assert.That(batchEnumerable, Is.Not.Null, "The batch enumerable should have been populated.");

            var batchEnumerableList = batchEnumerable.ToList();

            Assert.That(batchEnumerableList.Count, Is.EqualTo(batch.Count), "The wrong number of messages was in the enumerable.");

            for (var index = 0; index < batchMessages.Length; ++index)
            {
                Assert.That(batchEnumerableList.Contains(batchMessages[index]), $"The message at index: { index } was not in the enumerable.");
            }
        }
        public void AsEnumerableValidatesTheTypeParameter()
        {
            var options = new CreateMessageBatchOptions {
                MaxSizeInBytes = 5000
            };

            var batch = new AmqpMessageBatch(options);

            Assert.That(() => batch.AsEnumerable <AmqpMessage>(), Throws.InstanceOf <FormatException>());
        }