public void GivenAnAggregateWithChangesThenTheChangesMarkedAsCommittedEventIsRaisedWithTheChangesAttached() { bool wasInvoked = false; var aggregate = new SerializableEventCentricAggregateRoot(Guid.NewGuid()); var context = new SerializableMessage(); var request = new SetRequest(context, Guid.NewGuid()); aggregate.Set(request); aggregate.ChangesMarkedAsCommitted += (sender, e) => { var changes = e as ChangesMarkedAsCommittedEventArgs; Assert.NotNull(changes); Assert.True(changes !.Changes.Count() == 1); _ = Assert.IsType <SerializableSetDomainEvent>(changes.Changes.First()); wasInvoked = true; }; aggregate.MarkChangesAsCommitted(); Assert.True(wasInvoked); }