public async Task SetQueueAttributesWithErrorAsync()
        {
            var rsmq = new Rsmq();

            Assert.ThrowsAsync <QueueNotFoundException>(async() => await rsmq.SetQueueAttributesAsync(new SetQueueAttributesOptions {
                QueueName = Global.QueueName, MaxSize = 7453
            }));

            await rsmq.CreateQueueAsync(new CreateQueueOptions { QueueName = Global.QueueName });

            Assert.ThrowsAsync <QueueNotFoundException>(async() => await rsmq.SetQueueAttributesAsync(new SetQueueAttributesOptions {
                QueueName = Global.WrongQueueName, MaxSize = 3000
            }));
            Assert.ThrowsAsync <NoAttributeSuppliedException>(async() => await rsmq.SetQueueAttributesAsync(new SetQueueAttributesOptions {
                QueueName = Global.QueueName
            }));
            Assert.ThrowsAsync <InvalidValueException>(async() => await rsmq.SetQueueAttributesAsync(new SetQueueAttributesOptions {
                QueueName = Global.QueueName, MaxSize = -34
            }));
        }
        public async Task SetQueueAttributesAsync(SetQueueAttributesOptions value)
        {
            var rsmq = new Rsmq();
            var defaultAttributes = new CreateQueueOptions {
                QueueName = value.QueueName
            };
            await rsmq.CreateQueueAsync(defaultAttributes);

            var queueAttributes = await rsmq.GetQueueAttributesAsync(new GetQueueAttributesOptions { QueueName = value.QueueName });

            Assert.AreEqual(defaultAttributes.Delay, queueAttributes.Delay);
            Assert.AreEqual(defaultAttributes.MaxSize, queueAttributes.MaxSize);
            Assert.AreEqual(defaultAttributes.VisibilityTimer, queueAttributes.VisibilityTimer);

            queueAttributes = await rsmq.SetQueueAttributesAsync(value);

            Assert.AreEqual(value.Delay ?? defaultAttributes.Delay, queueAttributes.Delay);
            Assert.AreEqual(value.MaxSize ?? defaultAttributes.MaxSize, queueAttributes.MaxSize);
            Assert.AreEqual(value.VisibilityTimer ?? defaultAttributes.VisibilityTimer, queueAttributes.VisibilityTimer);
        }