PageRenderTime 45ms CodeModel.GetById 16ms RepoModel.GetById 0ms app.codeStats 0ms

/Source/Bifrost.Specs/Events/for_EventSubscriptionManager/when_creating_and_there_is_no_subscription_in_repository_but_one_in_process.cs

#
C# | 41 lines | 34 code | 7 blank | 0 comment | 0 complexity | 576ece3196b5e40efd462a92e12be4c5 MD5 | raw file
Possible License(s): CC-BY-SA-3.0
  1. using System;
  2. using Bifrost.Events;
  3. using Bifrost.Execution;
  4. using Machine.Specifications;
  5. using Bifrost.Time;
  6. namespace Bifrost.Specs.Events.for_EventSubscriptionManager
  7. {
  8. public class when_creating_and_there_is_no_subscription_in_repository_but_one_in_process
  9. {
  10. protected static EventSubscriptionManager event_subscription_manager;
  11. protected static Moq.Mock<IEventSubscriptionRepository> event_subscription_repository_mock;
  12. protected static Moq.Mock<ITypeDiscoverer> type_discoverer_mock;
  13. protected static Moq.Mock<IContainer> container_mock;
  14. static EventSubscription expected_subscription;
  15. static EventSubscription actual_subscription;
  16. Establish context = () =>
  17. {
  18. event_subscription_repository_mock = new Moq.Mock<IEventSubscriptionRepository>();
  19. type_discoverer_mock = new Moq.Mock<ITypeDiscoverer>();
  20. container_mock = new Moq.Mock<IContainer>();
  21. event_subscription_repository_mock.Setup(s=>s.Add(Moq.It.IsAny<EventSubscription>())).Callback((EventSubscription s)=>actual_subscription=s);
  22. type_discoverer_mock.Setup(s=>s.FindMultiple<IEventSubscriber>()).Returns(new[] { typeof(SomeEventSubscriber)});
  23. expected_subscription = new EventSubscription
  24. {
  25. Owner = typeof(SomeEventSubscriber),
  26. Method = typeof(SomeEventSubscriber).GetMethod(ProcessMethodInvoker.ProcessMethodName, new[] { typeof(SomeEvent) }),
  27. EventType = typeof(SomeEvent),
  28. EventName = typeof(SomeEvent).Name
  29. };
  30. };
  31. Because of = () => event_subscription_manager = new EventSubscriptionManager(event_subscription_repository_mock.Object, type_discoverer_mock.Object, container_mock.Object);
  32. It should_add_subscription = () => actual_subscription.ShouldEqual(expected_subscription);
  33. }
  34. }