You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@rocketmq.apache.org by li...@apache.org on 2022/06/27 08:13:44 UTC

[rocketmq-client-csharp] branch observability updated: Add unit tests for SimpleConsumer

This is an automated email from the ASF dual-hosted git repository.

lizhanhui pushed a commit to branch observability
in repository https://gitbox.apache.org/repos/asf/rocketmq-client-csharp.git


The following commit(s) were added to refs/heads/observability by this push:
     new 8d09282  Add unit tests for SimpleConsumer
8d09282 is described below

commit 8d09282883484f6b8afae51bea615abf3adf8425
Author: Li Zhanhui <li...@gmail.com>
AuthorDate: Mon Jun 27 16:13:32 2022 +0800

    Add unit tests for SimpleConsumer
---
 tests/SimpleConsumerTest.cs | 39 ++++++++++++++++++++++++++++++++++++++-
 1 file changed, 38 insertions(+), 1 deletion(-)

diff --git a/tests/SimpleConsumerTest.cs b/tests/SimpleConsumerTest.cs
index 2500503..c986614 100644
--- a/tests/SimpleConsumerTest.cs
+++ b/tests/SimpleConsumerTest.cs
@@ -20,6 +20,7 @@ using System.Threading;
 using Microsoft.VisualStudio.TestTools.UnitTesting;
 using rmq = Apache.Rocketmq.V2;
 using System.Threading.Tasks;
+using Castle.Core.Logging;
 using Org.Apache.Rocketmq;
 
 namespace tests
@@ -64,7 +65,43 @@ namespace tests
             var batchSize = 32;
             var receiveTimeout = TimeSpan.FromSeconds(10);
             var messages  = await simpleConsumer.Receive(batchSize, receiveTimeout);
-            Console.WriteLine($"Received {messages.Count} messages in all");
+            Assert.IsTrue(messages.Count > 0);
+            Assert.IsTrue(messages.Count <= batchSize);
+            await simpleConsumer.Shutdown();
+        }
+        
+        
+        [TestMethod]
+        public async Task TestAck()
+        {
+            var simpleConsumer = new SimpleConsumer(accessPoint, _resourceNamespace, _group);
+            simpleConsumer.Subscribe(_topic, rmq::FilterType.Tag, "*");
+            await simpleConsumer.Start();
+            var batchSize = 32;
+            var receiveTimeout = TimeSpan.FromSeconds(10);
+            var messages  = await simpleConsumer.Receive(batchSize, receiveTimeout);
+            foreach (var message in messages)
+            {
+                await simpleConsumer.Ack(message);
+                Console.WriteLine($"Ack {message.MessageId} OK");
+            }
+            await simpleConsumer.Shutdown();
+        }
+        
+        [TestMethod]
+        public async Task TestChangeInvisibleDuration()
+        {
+            var simpleConsumer = new SimpleConsumer(accessPoint, _resourceNamespace, _group);
+            simpleConsumer.Subscribe(_topic, rmq::FilterType.Tag, "*");
+            await simpleConsumer.Start();
+            var batchSize = 32;
+            var receiveTimeout = TimeSpan.FromSeconds(10);
+            var messages  = await simpleConsumer.Receive(batchSize, receiveTimeout);
+            foreach (var message in messages)
+            {
+                await simpleConsumer.ChangeInvisibleDuration(message, TimeSpan.FromSeconds(10));
+                Console.WriteLine($"ChangeInvisibleDuration for message[MsgId={message.MessageId}] OK");
+            }
             await simpleConsumer.Shutdown();
         }
     }