public static SagaTypes ToSagaTypes(HandlerCall call)
 {
     return new SagaTypes
     {
         HandlerType = call.HandlerType,
         MessageType = call.InputType(),
         StateType = call.HandlerType.FindInterfaceThatCloses(typeof(IStatefulSaga<>)).GetGenericArguments().Single()
     };
 }
Пример #2
0
        public void SetUp()
        {
            theGraph = new HandlerGraph();

            concreteCall = HandlerCall.For<ConcreteHandler>(x => x.M1(null));

            concreteCall.Clone().ShouldEqual(concreteCall);

            concreteCall2 = HandlerCall.For<ConcreteHandler>(x => x.M2(null));
            concreteCall3 = HandlerCall.For<ConcreteHandler>(x => x.M3(null));
            concreteCall4 = HandlerCall.For<ConcreteHandler>(x => x.M4(null));
        }
Пример #3
0
 public void is_candidate_allows_interface_return_types()
 {
     HandlerCall.IsCandidate(ReflectionHelper.GetMethod <ITargetHandler>(x => x.ReturnsInterface(null)))
     .ShouldBeTrue();
 }
 public static bool IsSagaHandler(HandlerCall call)
 {
     var handlerType = call.HandlerType;
     return IsSagaHandler(handlerType);
 }
Пример #5
0
 public void throws_chunks_if_you_try_to_use_a_method_with_no_inputs()
 {
     Exception <ArgumentOutOfRangeException> .ShouldBeThrownBy(
         () => { HandlerCall.For <ITargetHandler>(x => x.ZeroInZeroOut()); });
 }
Пример #6
0
        public void could_handle_is_false_for_its_own_input_type()
        {
            var handler = HandlerCall.For <ITargetHandler>(x => x.OneInOneOut(null));

            handler.CouldHandleOtherMessageType(typeof(Input)).ShouldBeFalse();
        }
 public IEnumerable <HandlerCall> FindCalls()
 {
     yield return(HandlerCall.For <MyFunkySpaceAgeProcessor>(x => x.Go(null)));
 }
        public static bool IsSagaHandler(HandlerCall call)
        {
            var handlerType = call.HandlerType;

            return(IsSagaHandler(handlerType));
        }
 public void is_saga_handler_negative()
 {
     StatefulSagaConvention.IsSagaHandler(HandlerCall.For <SimpleHandler <OneMessage> >(x => x.Handle(null)))
     .ShouldBeFalse();
 }
Пример #10
0
 public void handler_is_async_positive()
 {
     HandlerCall.For <TaskHandler>(x => x.Go(null)).IsAsync.ShouldBeTrue();
     HandlerCall.For <TaskHandler>(x => x.Other(null)).IsAsync.ShouldBeTrue();
 }
Пример #11
0
 public void handler_is_async_negative()
 {
     HandlerCall.For <SomeHandler>(x => x.Interface(null)).IsAsync.ShouldBeFalse();
 }