コード例 #1
0
        public void WhenIUndoEventsTheyAreUndone(IEventDataDeserializationService eventDataDeserializationService)
        {
            var target = new UndoEventProcessingService(eventDataDeserializationService);
            var eventDataSerialized = Guid.NewGuid().ToString();
            var fixture             = new Fixture().Customize(new AutoConfiguredNSubstituteCustomization());

            fixture.Register(() => false);
            var events             = fixture.CreateMany <IEvent>(4).OrderBy(t => t.EffectiveDateTime).ToList();
            var undoEvent          = Substitute.For <IEvent>();
            var eventData          = new UndoData(events.Select(t => t.EventId).ToList());
            var latestEvent        = events.Max(t => t.EffectiveDateTime).AddSeconds(1);
            var expectedToBeUndone = new List <IEvent>();

            expectedToBeUndone.AddRange(events);

            undoEvent.EventType.Name.Returns("Undo");
            undoEvent.EventData.Returns(eventDataSerialized);
            undoEvent.EffectiveDateTime.Returns(latestEvent);
            events.Add(undoEvent);

            eventDataDeserializationService.Deserialize(typeof(UndoData), eventDataSerialized).Returns(eventData);
            target.Execute(events);

            Assert.All(expectedToBeUndone, @event => @event.Received().Undone = true);
        }
コード例 #2
0
 public UndoEventProcessingService(IEventDataDeserializationService eventDataDeserializationService)
 {
     _eventDataDeserializationService = eventDataDeserializationService;
 }
コード例 #3
0
 public EventPlayerUnitTests()
 {
     _eventEvaluatorRegistry          = Substitute.For <IEventEvaluatorRegistry>();
     _eventDataDeserializationService = Substitute.For <IEventDataDeserializationService>();
     _target = new EventPlayer(_eventEvaluatorRegistry, _eventDataDeserializationService);
 }
 public EventDataDeserializationServiceUnitTests()
 {
     _target = new EventDataDeserializationService();
 }
コード例 #5
0
 public EventPlayer(IEventEvaluatorRegistry eventEvaluatorRegistry,
                    IEventDataDeserializationService eventDataDeserializationService)
 {
     _eventEvaluatorRegistry          = eventEvaluatorRegistry;
     _eventDataDeserializationService = eventDataDeserializationService;
 }