public static SagaTypes ToSagaTypes(HandlerCall call) { return new SagaTypes { HandlerType = call.HandlerType, MessageType = call.InputType(), StateType = call.HandlerType.FindInterfaceThatCloses(typeof(IStatefulSaga<>)).GetGenericArguments().Single() }; }
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)); }
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); }
public void throws_chunks_if_you_try_to_use_a_method_with_no_inputs() { Exception <ArgumentOutOfRangeException> .ShouldBeThrownBy( () => { HandlerCall.For <ITargetHandler>(x => x.ZeroInZeroOut()); }); }
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(); }
public void handler_is_async_positive() { HandlerCall.For <TaskHandler>(x => x.Go(null)).IsAsync.ShouldBeTrue(); HandlerCall.For <TaskHandler>(x => x.Other(null)).IsAsync.ShouldBeTrue(); }
public void handler_is_async_negative() { HandlerCall.For <SomeHandler>(x => x.Interface(null)).IsAsync.ShouldBeFalse(); }