public void CreateQueueWithError() { var rsmq = new Rsmq(); Assert.Throws <MissingParameterException>(() => rsmq.CreateQueue(new CreateQueueOptions { QueueName = null })); Assert.Throws <InvalidFormatException>(() => rsmq.CreateQueue(new CreateQueueOptions { QueueName = Global.WrongQueueNameFormat })); var queues = rsmq.ListQueues(); Assert.Zero(queues.Count()); }
public void CreateQueue(string value) { var rsmq = new Rsmq(); Assert.AreEqual(1, rsmq.CreateQueue(new CreateQueueOptions { QueueName = value })); var queues = rsmq.ListQueues(); Assert.Contains(value, queues.ToArray()); }
public void DeleteQueue() { var rsmq = new Rsmq(); rsmq.CreateQueue(new CreateQueueOptions { QueueName = Global.QueueName }); Assert.AreEqual(1, rsmq.ListQueues().Count()); rsmq.DeleteQueue(new DeleteQueueOptions { QueueName = Global.QueueName }); Assert.Zero(rsmq.ListQueues().Count()); }
public void ListQueues() { var rsmq = new Rsmq(); var queues = rsmq.ListQueues(); Assert.Zero(queues.Count()); rsmq.CreateQueue(new CreateQueueOptions { QueueName = Global.QueueName }); queues = rsmq.ListQueues(); Assert.AreEqual(queues.Count(), 1); Assert.Contains(Global.QueueName, queues.ToArray()); }
public void DeleteMessage() { var rsmq = new Rsmq(); rsmq.CreateQueue(new CreateQueueOptions { QueueName = Global.QueueName }); var msgId = rsmq.SendMessage(new SendMessageOptions { QueueName = Global.QueueName, Message = "hello" }); Assert.AreEqual(1, rsmq.DeleteMessage(new DeleteMessageOptions { QueueName = Global.QueueName, Id = msgId })); Assert.Zero(rsmq.DeleteMessage(new DeleteMessageOptions { QueueName = Global.QueueName, Id = "0123456789abcdefghijklmnopqrstuv" })); }
public void PopMessage() { var rsmq = new Rsmq(); rsmq.CreateQueue(new CreateQueueOptions { QueueName = Global.QueueName }); var msgId = rsmq.SendMessage(new SendMessageOptions { QueueName = Global.QueueName, Message = "hello" }); var poppedMessage = rsmq.PopMessage(new PopMessageOptions { QueueName = Global.QueueName }); Assert.AreEqual(msgId, poppedMessage.Id); Assert.Zero(rsmq.DeleteMessage(new DeleteMessageOptions { QueueName = Global.QueueName, Id = msgId })); }
public void SetQueueAttributesWithError() { var rsmq = new Rsmq(); Assert.Throws <QueueNotFoundException>(() => rsmq.SetQueueAttributes(new SetQueueAttributesOptions { QueueName = Global.QueueName, MaxSize = 7453 })); rsmq.CreateQueue(new CreateQueueOptions { QueueName = Global.QueueName }); Assert.Throws <QueueNotFoundException>(() => rsmq.SetQueueAttributes(new SetQueueAttributesOptions { QueueName = Global.WrongQueueName, MaxSize = 3000 })); Assert.Throws <NoAttributeSuppliedException>(() => rsmq.SetQueueAttributes(new SetQueueAttributesOptions { QueueName = Global.QueueName })); Assert.Throws <InvalidValueException>(() => rsmq.SetQueueAttributes(new SetQueueAttributesOptions { QueueName = Global.QueueName, MaxSize = -34 })); }
public void GetQueueAttributes(CreateQueueOptions value) { var rsmq = new Rsmq(); rsmq.CreateQueue(value); var attributes = rsmq.GetQueueAttributes(new GetQueueAttributesOptions { QueueName = value.QueueName }); Assert.AreEqual(attributes.Delay, value.Delay); Assert.AreEqual(attributes.MaxSize, value.MaxSize); Assert.AreEqual(attributes.VisibilityTimer, value.VisibilityTimer); Assert.Zero(attributes.TotalSent); rsmq.SendMessage(new SendMessageOptions { QueueName = value.QueueName, Message = "Halo" }); attributes = rsmq.GetQueueAttributes(new GetQueueAttributesOptions { QueueName = value.QueueName }); Assert.AreEqual(1, attributes.TotalSent); }
public void ReceiveMessage() { var rsmq = new Rsmq(); rsmq.CreateQueue(new CreateQueueOptions { QueueName = Global.QueueName }); var msgId1 = rsmq.SendMessage(new SendMessageOptions { QueueName = Global.QueueName, Message = "hello1" }); var msgId2 = rsmq.SendMessage(new SendMessageOptions { QueueName = Global.QueueName, Message = "hello2" }); var message1 = rsmq.ReceiveMessage(new ReceiveMessageOptions { QueueName = Global.QueueName }); var message2 = rsmq.ReceiveMessage(new ReceiveMessageOptions { QueueName = Global.QueueName }); Assert.NotNull(message1); Assert.NotNull(message2); Assert.AreEqual("hello1", message1.Message); Assert.AreEqual("hello2", message2.Message); Assert.AreEqual(msgId1, message1.Id); Assert.AreEqual(msgId2, message2.Id); Assert.AreEqual(1, rsmq.DeleteMessage(new DeleteMessageOptions { QueueName = Global.QueueName, Id = msgId1 })); Assert.AreEqual(1, rsmq.DeleteMessage(new DeleteMessageOptions { QueueName = Global.QueueName, Id = msgId2 })); }
public void SetQueueAttributes(SetQueueAttributesOptions value) { var rsmq = new Rsmq(); var defaultAttributes = new CreateQueueOptions { QueueName = value.QueueName }; rsmq.CreateQueue(defaultAttributes); var queueAttributes = rsmq.GetQueueAttributes(new GetQueueAttributesOptions { QueueName = value.QueueName }); Assert.AreEqual(defaultAttributes.Delay, queueAttributes.Delay); Assert.AreEqual(defaultAttributes.MaxSize, queueAttributes.MaxSize); Assert.AreEqual(defaultAttributes.VisibilityTimer, queueAttributes.VisibilityTimer); queueAttributes = rsmq.SetQueueAttributes(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); }
public void ChangeMessageVisibility() { var rsmq = new Rsmq(); rsmq.CreateQueue(new CreateQueueOptions { QueueName = Global.QueueName }); var msgId = rsmq.SendMessage(new SendMessageOptions { QueueName = Global.QueueName, Message = "hello" }); rsmq.ChangeMessageVisibility(new ChangeMessageVisibilityOptions { QueueName = Global.QueueName, Id = msgId, VisibilityTimer = 2 }); Assert.IsNull(rsmq.ReceiveMessage(new ReceiveMessageOptions { QueueName = Global.QueueName })); Task.WaitAll(Task.Delay(2500)); Assert.IsNotNull(rsmq.ReceiveMessage(new ReceiveMessageOptions { QueueName = Global.QueueName })); }