public void Given_only_aggregate_events_persisted_it_can_be_loaded(IRepository <DomainEvent> eventRepo, AggregateRepository aggrRepo) { try { _sourceId = Guid.NewGuid(); _createdEvent = new SampleAggregateCreatedEvent("initial value", _sourceId); _changedEvent = new SampleAggregateChangedEvent("changed value", _sourceId); string persistenceId = AggregateActorName.New <SampleAggregate>(_sourceId).ToString(); eventRepo.Save(persistenceId, _createdEvent, _changedEvent); _aggregate = aggrRepo.LoadAggregate <SampleAggregate>(_sourceId); Assert.AreEqual(_sourceId, _aggregate.Id); Assert.AreEqual(_changedEvent.Value, _aggregate.Value); } finally { eventRepo.Dispose(); aggrRepo.Dispose(); } }
public async Task Given_only_aggregate_events_persisted_it_can_be_loaded(IRepository <DomainEvent> eventRepo, AggregateRepository aggrRepo) { try { _sourceId = Guid.NewGuid().ToString(); _created = new BalloonCreated("initial value", _sourceId); _changed = new BalloonTitleChanged("changed value", _sourceId); var persistenceId = EntityActorName.New <Balloon>(_sourceId).ToString(); await eventRepo.Save(persistenceId, _created, _changed); _aggregate = await aggrRepo.LoadAggregate <Balloon>(_sourceId); Assert.Equal(_sourceId, _aggregate.Id); Assert.Equal(_changed.Value, _aggregate.Title); } finally { eventRepo.Dispose(); aggrRepo.Dispose(); } }