浏览代码

Add missing tests in MessageHandlerInvokerSubscriberTests

Olivier Coanet 2 年之前
父节点
当前提交
be0e4002b7
共有 1 个文件被更改,包括 25 次插入3 次删除
  1. 25 3
      src/Abc.Zebus.Tests/Dispatch/MessageHandlerInvokerSubscriberTests.cs

+ 25 - 3
src/Abc.Zebus.Tests/Dispatch/MessageHandlerInvokerSubscriberTests.cs

@@ -13,10 +13,13 @@ namespace Abc.Zebus.Tests.Dispatch
     {
     {
         [TestCase(typeof(DefaultHandler), typeof(Event), SubscriptionMode.Auto)]
         [TestCase(typeof(DefaultHandler), typeof(Event), SubscriptionMode.Auto)]
         [TestCase(typeof(DefaultHandler), typeof(RoutableEvent), SubscriptionMode.Manual)]
         [TestCase(typeof(DefaultHandler), typeof(RoutableEvent), SubscriptionMode.Manual)]
+        [TestCase(typeof(DefaultHandler), typeof(AutoSubscribeRoutableEvent), SubscriptionMode.Auto)]
         [TestCase(typeof(ManualHandler), typeof(Event), SubscriptionMode.Manual)]
         [TestCase(typeof(ManualHandler), typeof(Event), SubscriptionMode.Manual)]
         [TestCase(typeof(ManualHandler), typeof(RoutableEvent), SubscriptionMode.Manual)]
         [TestCase(typeof(ManualHandler), typeof(RoutableEvent), SubscriptionMode.Manual)]
+        [TestCase(typeof(ManualHandler), typeof(AutoSubscribeRoutableEvent), SubscriptionMode.Manual)]
         [TestCase(typeof(AutoHandler), typeof(Event), SubscriptionMode.Auto)]
         [TestCase(typeof(AutoHandler), typeof(Event), SubscriptionMode.Auto)]
         [TestCase(typeof(AutoHandler), typeof(RoutableEvent), SubscriptionMode.Auto)]
         [TestCase(typeof(AutoHandler), typeof(RoutableEvent), SubscriptionMode.Auto)]
+        [TestCase(typeof(AutoHandler), typeof(AutoSubscribeRoutableEvent), SubscriptionMode.Auto)]
         public void should_get_default_subscription_mode(Type handlerType, Type messageType, SubscriptionMode expectedSubscriptionMode)
         public void should_get_default_subscription_mode(Type handlerType, Type messageType, SubscriptionMode expectedSubscriptionMode)
         {
         {
             // Arrange
             // Arrange
@@ -42,11 +45,18 @@ namespace Abc.Zebus.Tests.Dispatch
             public int Key { get; set; }
             public int Key { get; set; }
         }
         }
 
 
+        [Routable(AutoSubscribe = true)]
+        public class AutoSubscribeRoutableEvent : IEvent
+        {
+            [RoutingPosition(1)]
+            public int Key { get; set; }
+        }
+
         public class Event : IEvent
         public class Event : IEvent
         {
         {
         }
         }
 
 
-        public class DefaultHandler : IMessageHandler<RoutableEvent>, IMessageHandler<Event>
+        public class DefaultHandler : IMessageHandler<RoutableEvent>, IMessageHandler<Event>, IMessageHandler<AutoSubscribeRoutableEvent>
         {
         {
             public void Handle(RoutableEvent message)
             public void Handle(RoutableEvent message)
             {
             {
@@ -55,10 +65,14 @@ namespace Abc.Zebus.Tests.Dispatch
             public void Handle(Event message)
             public void Handle(Event message)
             {
             {
             }
             }
+
+            public void Handle(AutoSubscribeRoutableEvent message)
+            {
+            }
         }
         }
 
 
         [SubscriptionMode(SubscriptionMode.Manual)]
         [SubscriptionMode(SubscriptionMode.Manual)]
-        public class ManualHandler : IMessageHandler<RoutableEvent>, IMessageHandler<Event>
+        public class ManualHandler : IMessageHandler<RoutableEvent>, IMessageHandler<Event>, IMessageHandler<AutoSubscribeRoutableEvent>
         {
         {
             public void Handle(RoutableEvent message)
             public void Handle(RoutableEvent message)
             {
             {
@@ -67,10 +81,14 @@ namespace Abc.Zebus.Tests.Dispatch
             public void Handle(Event message)
             public void Handle(Event message)
             {
             {
             }
             }
+
+            public void Handle(AutoSubscribeRoutableEvent message)
+            {
+            }
         }
         }
 
 
         [SubscriptionMode(SubscriptionMode.Auto)]
         [SubscriptionMode(SubscriptionMode.Auto)]
-        public class AutoHandler : IMessageHandler<RoutableEvent>, IMessageHandler<Event>
+        public class AutoHandler : IMessageHandler<RoutableEvent>, IMessageHandler<Event>, IMessageHandler<AutoSubscribeRoutableEvent>
         {
         {
             public void Handle(RoutableEvent message)
             public void Handle(RoutableEvent message)
             {
             {
@@ -79,6 +97,10 @@ namespace Abc.Zebus.Tests.Dispatch
             public void Handle(Event message)
             public void Handle(Event message)
             {
             {
             }
             }
+
+            public void Handle(AutoSubscribeRoutableEvent message)
+            {
+            }
         }
         }
     }
     }
 }
 }