/*============================================================================*/ /* Public Functions */ /*============================================================================*/ public void Execute(SupportEvent evt) { callback(evt); }
public SupportEvent (SupportEvent.Type type) { _type = type; }
[Test] //TODO: Make this test pass public void event_is_injected_into_guard() { IEvent injectedEvent = null; injector.Map(typeof(Action<EventInjectedCallbackGuard>), "ApproveCallback").ToValue((Action<EventInjectedCallbackGuard>)delegate(EventInjectedCallbackGuard guard) { injectedEvent = guard.evt; }); subject .Map(SupportEvent.Type.TYPE1, typeof(IEvent)) .ToCommand<NullCommand>() .WithGuards<EventInjectedCallbackGuard>(); SupportEvent evt = new SupportEvent(SupportEvent.Type.TYPE1); dispatcher.Dispatch(evt); Assert.That(injectedEvent, Is.EqualTo(evt)); }
public void unspecified_typed_event_is_injected_into_command_as_typed_event() { SupportEvent injectedEvent = null; injector.Map(typeof(Action<SupportEventTriggeredSelfReportingCallbackCommand>), "ExecuteCallback").ToValue((Action<SupportEventTriggeredSelfReportingCallbackCommand>)delegate(SupportEventTriggeredSelfReportingCallbackCommand command) { injectedEvent = command.typedEvent; }); subject.Map(SupportEvent.Type.TYPE1) .ToCommand<SupportEventTriggeredSelfReportingCallbackCommand>(); SupportEvent supportEvent = new SupportEvent(SupportEvent.Type.TYPE1); dispatcher.Dispatch(supportEvent); Assert.That(injectedEvent, Is.EqualTo(supportEvent)); }
public void event_is_passed_to_execute_method() { SupportEvent actualEvent = null; injector.Map(typeof(Action<SupportEvent>), "ExecuteCallback").ToValue((Action<SupportEvent>)delegate(SupportEvent evt) { actualEvent = evt; }); subject.Map(SupportEvent.Type.TYPE1, typeof(SupportEvent)) .ToCommand<EventParametersCommand>(); SupportEvent supportEvent = new SupportEvent(SupportEvent.Type.TYPE1); dispatcher.Dispatch(supportEvent); Assert.That(actualEvent, Is.EqualTo(supportEvent)); }
[Test] //TODO: Make this unit test work public void event_is_injected_into_command() { IEvent injectedEvent = null; injector.Map(typeof(Action<EventInjectedCallbackCommand>), "ExecuteCallback").ToValue((Action<EventInjectedCallbackCommand>)delegate(EventInjectedCallbackCommand command) { injectedEvent = command.evt; }); subject.Map(SupportEvent.Type.TYPE1, typeof(IEvent)) .ToCommand<EventInjectedCallbackCommand>(); SupportEvent evt = new SupportEvent(SupportEvent.Type.TYPE1); dispatcher.Dispatch(evt); Assert.That(injectedEvent, Is.EqualTo(evt)); }