Browse Source

TestBus: Added two utility methods to set handlers that throw exceptions when handling specific messages

Adrien Biarnès 10 years ago
parent
commit
091e111f46
1 changed files with 10 additions and 0 deletions
  1. 10 0
      src/Abc.Zebus.Testing/TestBus.cs

+ 10 - 0
src/Abc.Zebus.Testing/TestBus.cs

@@ -247,6 +247,16 @@ namespace Abc.Zebus.Testing
             };
         }
 
+        public void AddDomainExceptionHandler<TMessage>(DomainException ex) where TMessage : IMessage
+        {
+            _handlers[new HandlerKey(typeof(TMessage), default(PeerId))] = x => { throw ex; };
+        }
+
+        public void AddExceptionHandler<TMessage>(Exception ex = null) where TMessage : IMessage
+        {
+            _handlers[new HandlerKey(typeof(TMessage), default(PeerId))] = x => { throw ex ?? new Exception(); };
+        }
+
         public void Expect(IEnumerable<IMessage> expectedMessages)
         {
             _messageComparer.CheckExpectations(Messages, expectedMessages, false);