public void When_raising_future_event() { _testCommand = new ScheduleEventInFutureCommand(DateTime.Now, Guid.NewGuid(), "test value"); _aggregate = new TestAggregate(_testCommand.AggregateId); _aggregate.ScheduleInFuture(_testCommand.RaiseTime, _testCommand.Value); _futureEventEnvelop = _aggregate.GetEvent <FutureEventScheduledEvent>(); _aggregate.RaiseScheduledEvent(_futureEventEnvelop.Id); _producedEvent = _aggregate.GetEvent <TestDomainEvent>(); _futureEventOccuredEvent = _aggregate.GetEvent <FutureEventOccuredEvent>(); }
public void All_existed_future_events_remain_the_same() { _aggregate.RaiseScheduledEvent(_futureEvent.Id); var occuredEvent = _aggregate.GetEvent <FutureEventOccuredEvent>(); Assert.AreEqual(_futureEvent.Id, occuredEvent.FutureEventId); }
public void When_cancel_existing_scheduled_future_event() { _aggregate = new TestAggregate(Guid.NewGuid()); var testValue = "value D"; _aggregate.ScheduleInFuture(DateTime.Now.AddSeconds(400), testValue); _futureEvent = _aggregate.GetEvent <FutureEventScheduledEvent>(); _aggregate.ClearEvents(); _aggregate.CancelFutureEvents("will not be found in any future event"); }
public void Cancelation_event_is_produced() { var cancelEvent = _aggregate.GetEvent <FutureEventCanceledEvent>(); Assert.AreEqual(_futureEventA.Id, cancelEvent.FutureEventId); }