public void TrackToPersistentStore_CalledWithAggregateRootAlreadyBeingTracked_ExpectAggregateRootAlreadyBeingTrackedException() { using (var tracker = new LambdaPostPersistenceDomainEventTracker<AggregateRootWithTwoDomainEvents>()) { var tracked = CreateAggregateRootTrackedBy(tracker, DummyPersistentObserver); tracker.Invoking(x => x.TrackToPersistentStore(tracked, DummyPersistentObserver)) .ShouldThrow<AggregateRootAlreadyBeingTrackedException>(); } }
public void TrackToPersistentStore_CalledWithNullAggregateRoot_ExpectArgumentNullExceptionWithCorrectParamName() { using (var tracker = new LambdaPostPersistenceDomainEventTracker<object>()) { tracker.Invoking(x => x.TrackToPersistentStore(null, DummyPersistentObserver)) .ShouldThrow<ArgumentNullException>().And.ParamName.Should().Be("aggregateRoot"); } }