public void NewEventsAreExposedThroughGetUncommittedChanged() { E newEvent = null; Action<E> onApplied = e => newEvent = e; var saga = new MySaga(onApplied); saga.Method(); saga.GetUncommittedChanges().Should().Have.SameSequenceAs(new[] {newEvent}); }
public void HistoricalEventsAreNotExposedThroughGetUncommitedChanged() { E historicalEvent = null; Action<E> onApplied = e => { }; var saga = new MySaga(onApplied); saga.LoadsFromHistory(new[] { historicalEvent }); saga.GetUncommittedChanges().Should().Be.Empty(); }
public void UncommittedEventsAreInOrder() { var events = new List<E>(); Action<E> onApply = e => events.Add(e); var saga = new MySaga(onApply); saga.Method(); saga.Method(); saga.GetUncommittedChanges().Should().Have.SameSequenceAs(events); }
public void UncommittedEventsAreClearedWhenMarkedAsCommitted() { Action<E> onApplied = e => { }; var saga = new MySaga(onApplied); saga.Method(); saga.MarkChangesAsCommitted(); saga.GetUncommittedChanges().Should().Be.Empty(); }