public void ShouldOnlyInvokeBaseClassHandlerMethofWhenHandlingBaseClassMessage()
        {
            var handler = new MessageHierarchyHandler();

            Test.Handler(handler)
            .OnMessage(new BaseClassMessage());

            Assert.IsTrue(handler.BaseClassMessageHandlerInvoked);
            Assert.IsFalse(handler.BaseClassImplementingMessageHandlerInvoked);
        }
        public void ShouldInvokeAllHandlerMethodsWhenHandlingSubclassedMessage()
        {
            var handler = new MessageHierarchyHandler();

            Test.Handler(handler)
            .OnMessage(new BaseClassImplementingMessage());

            Assert.IsTrue(handler.BaseClassMessageHandlerInvoked);
            Assert.IsTrue(handler.BaseClassImplementingMessageHandlerInvoked);
        }