Exemplo n.º 1
0
        public async Task GetCountAsync_More()
        {
            PassiveMqQueuClient client = this.Account.CreateQueueClient("myTestQueue");

            await client.DeleteIfExists();

            try
            {
                await client.CrateIfNotExists();

                await client.AddMessage(new MqCreateMessage("any message"));

                Assert.AreEqual(1, await client.GetCount());
                await client.AddMessage(new MqCreateMessage("any message"));

                Assert.AreEqual(2, await client.GetCount());
                await client.AddMessage(new MqCreateMessage("any message"));

                Assert.AreEqual(3, await client.GetCount());
            }
            finally
            {
                await client.DeleteIfExists();
            }
        }
Exemplo n.º 2
0
        public async Task AddMessageAsync_Success(string messageText, string label)
        {
            PassiveMqQueuClient client = this.Account.CreateQueueClient("myTestQueue");

            await client.DeleteIfExists();

            try
            {
                await client.CrateIfNotExists();

                MqCreateMessage sendMessage    = new MqCreateMessage(messageText, label);
                MqMessage       createdMessage = await client.AddMessage(sendMessage);

                Assert.IsNotNull(createdMessage);
                Assert.AreEqual(messageText, createdMessage.AsString);
                Assert.AreEqual(label, createdMessage.Label);

                Assert.AreNotEqual(Guid.Empty, createdMessage.Id);
                Assert.AreNotEqual(default(DateTime), createdMessage.InsertionTime);
            }
            finally
            {
                await client.DeleteIfExists();
            }
        }
Exemplo n.º 3
0
        public async Task GetMessageAsync_VisibilityTime()
        {
            PassiveMqQueuClient client = this.Account.CreateQueueClient("myTestQueue");
            await client.DeleteIfExists();

            try
            {
                await client.CrateIfNotExists();

                await client.AddMessage(new MqCreateMessage("some messagefor MOM"));

                MqMessage realMessage = await client.GetMessage(TimeSpan.FromSeconds(5));

                Assert.IsNotNull(realMessage);
                Assert.AreEqual(1, realMessage.RetryCount);

                MqMessage realNextMessage = await client.GetMessage();

                Assert.IsNull(realNextMessage);

                await Task.Delay(10000);

                MqMessage realRentrantMessage = await client.GetMessage();

                Assert.IsNotNull(realRentrantMessage);
                Assert.AreEqual(2, realRentrantMessage.RetryCount);
            }
            finally
            {
                await client.DeleteIfExists();
            }
        }
Exemplo n.º 4
0
        public async Task GetMessageAsync_CheckValues(string message, string label)
        {
            PassiveMqQueuClient client = this.Account.CreateQueueClient("myTestQueue");
            await client.DeleteIfExists();

            try
            {
                await client.CrateIfNotExists();

                await client.AddMessage(new MqCreateMessage(message, label));

                MqMessage realMessage = await client.GetMessage();

                Assert.AreEqual(message, realMessage.AsString);
                Assert.AreEqual(label, realMessage.Label);

                Assert.AreNotEqual(Guid.Empty, realMessage.Id);
                Assert.AreNotEqual(default(DateTime), realMessage.InsertionTime);
                Assert.AreNotEqual(null, realMessage.NextVisibleTime);
            }
            finally
            {
                await client.DeleteIfExists();
            }
        }
Exemplo n.º 5
0
        public async Task GetMessageAsync_BatchWithDelete()
        {
            PassiveMqQueuClient client = this.Account.CreateQueueClient($"myTestQueue-{Guid.NewGuid()}");
            await client.DeleteIfExists();

            try
            {
                await client.CrateIfNotExists();

                for (int i = 1; i < 10; i++)
                {
                    await client.AddMessage(new MqCreateMessage(i.ToString()));
                }

                await Task.Delay(50);

                List <int> results = new List <int>();
                for (int i = 1; i < 10; i++)
                {
                    MqMessage message = await client.GetMessage();

                    results.Add(int.Parse(message.AsString));
                    await Task.Delay(3);

                    await client.DeleteMessage(message.Id);
                }

                CollectionAssert.AllItemsAreUnique(results, "GetMessageAsync rerurns multiple same result.");
            }
            finally
            {
                await client.DeleteIfExists();
            }
        }
Exemplo n.º 6
0
        public async Task DeleteMessageAsync_FromCreated()
        {
            PassiveMqQueuClient client = this.Account.CreateQueueClient("myTestQueue");
            await client.DeleteIfExists();

            try
            {
                await client.CrateIfNotExists();

                MqMessage message = await client.AddMessage(new MqCreateMessage("some messagefor MOM"));

                await client.DeleteMessage(message);

                MqMessage newMessage = await client.PeekMessage();

                Assert.IsNull(newMessage);
            }
            finally
            {
                await client.DeleteIfExists();
            }
        }