示例#1
0
        public void OutOfOrderExecutionShouldSucceed()
        {
            var i = new PublishInvocation<MessageA> {Message = new MessageA()};
            var j = new SendInvocation<MessageB> {Message = new MessageB()};
            var k = new SendLocalInvocation<MessageA> {Message = new MessageA()};
            var l = new HandleCurrentMessageLaterInvocation<object>();

            var exp1 = new ExpectedSendLocalInvocation<MessageA> {Check = m => true};
            var exp2 = new ExpectedSendInvocation<MessageB> {Check = m => true};
            var exp3 = new ExpectedPublishInvocation<MessageA> {Check = m => true};
            var exp4 = new ExpectedHandleCurrentMessageLaterInvocation<object>();

            exp1.Validate(i, j, k, l);
            exp2.Validate(i, j, k, l);
            exp3.Validate(i, j, k, l);
            exp4.Validate(i, j, k, l);
        }