public void can_save_saga_instance_via_custom_persister() { var persisterType = _container.Resolve<IReflection>() .GetGenericVersionOf(typeof(ISagaPersister<>), typeof(SampleInMemorySaga)); var persister = _container.Resolve(persisterType) as ISagaPersister<SampleInMemorySaga>; Assert.NotNull(persister); var saga = new SampleInMemorySaga() {SagaId = _saga_id}; persister.Save(saga); var fromPersister = persister.Find(_saga_id); Assert.Equal(saga, fromPersister); }
public void can_remove_saga_from_persistance_store_when_saga_is_marked_as_completed() { var persisterType = _container.Resolve<IReflection>() .GetGenericVersionOf(typeof(ISagaPersister<>), typeof(SampleInMemorySaga)); var persister = _container.Resolve(persisterType) as ISagaPersister<SampleInMemorySaga>; Assert.NotNull(persister); var saga = new SampleInMemorySaga() { SagaId = _saga_id }; persister.Save(saga); var fromPersister = persister.Find(_saga_id); Assert.Equal(saga.SagaId, fromPersister.SagaId); persister.Complete(fromPersister.SagaId); Assert.Null(persister.Find(_saga_id)); }