public async Task It_should_successfully_update_the_saga() { configuration.RequiresFindersSupport(); var saga = new SagaWithoutCorrelationPropertyData() { SomeSagaProperty = "initial value" }; await SaveSaga(saga); var updateValue = Guid.NewGuid().ToString(); var context = configuration.GetContextBagForSagaStorage(); using (var completeSession = await configuration.SynchronizedStorage.OpenSession(context)) { // the saga won't be loaded via a persister.Get operation in this case var customFinder = new CustomFinder(saga); var sagaData = await customFinder.FindBy(new SagaWithoutCorrelationPropertyStartingMessage(), completeSession, context); sagaData.SomeSagaProperty = updateValue; await configuration.SagaStorage.Update(sagaData, completeSession, context); await completeSession.CompleteAsync(); } var result = await GetById <SagaWithoutCorrelationPropertyData>(saga.Id); Assert.That(result, Is.Not.Null); Assert.That(result.SomeSagaProperty, Is.EqualTo(updateValue)); }
public async Task It_should_successfully_update_the_saga() { configuration.RequiresFindersSupport(); var sagaData = new SagaWithoutCorrelationPropertyData { SomeSagaProperty = Guid.NewGuid().ToString(), }; await SaveSaga(sagaData); var updateValue = Guid.NewGuid().ToString(); var context = configuration.GetContextBagForSagaStorage(); using (var completeSession = await configuration.SynchronizedStorage.OpenSession(context)) { sagaData = await configuration.SagaStorage.Get <SagaWithoutCorrelationPropertyData>(sagaData.Id, completeSession, context); sagaData.SomeSagaProperty = updateValue; await configuration.SagaStorage.Update(sagaData, completeSession, context); await completeSession.CompleteAsync(); } var result = await GetById <SagaWithoutCorrelationPropertyData>(sagaData.Id); Assert.That(result, Is.Not.Null); Assert.That(result.SomeSagaProperty, Is.EqualTo(updateValue)); }
public async Task It_should_successfully_remove_the_saga() { configuration.RequiresFindersSupport(); var propertyData = Guid.NewGuid().ToString(); var saga = new SagaWithoutCorrelationPropertyData { FoundByFinderProperty = propertyData, DateTimeProperty = DateTime.UtcNow }; await SaveSaga(saga); var context = configuration.GetContextBagForSagaStorage(); using (var completeSession = await configuration.SynchronizedStorage.OpenSession(context)) { var sagaData = await configuration.SagaStorage.Get <SagaWithoutCorrelationPropertyData>(saga.Id, completeSession, context); await configuration.SagaStorage.Complete(sagaData, completeSession, context); await completeSession.CompleteAsync(); } var result = await GetById <SagaWithoutCorrelationPropertyData>(saga.Id); Assert.That(result, Is.Null); }
public async Task It_should_persist_successfully_when_finder_exists() { configuration.RequiresFindersSupport(); var sagaData = new SagaWithoutCorrelationPropertyData { FoundByFinderProperty = Guid.NewGuid().ToString(), DateTimeProperty = DateTime.UtcNow }; await SaveSaga(sagaData); var result = await GetById <SagaWithoutCorrelationPropertyData>(sagaData.Id); Assert.AreEqual(sagaData.FoundByFinderProperty, result.FoundByFinderProperty); }
public async Task It_should_persist_successfully_when_finder_exists() { configuration.RequiresFindersSupport(); var propertyData = Guid.NewGuid().ToString(); var saga1 = new SagaWithoutCorrelationPropertyData { FoundByFinderProperty = propertyData, DateTimeProperty = DateTime.UtcNow }; var saga2 = new AnotherSagaWithoutCorrelationPropertyData { FoundByFinderProperty = propertyData }; var savingContextBag = configuration.GetContextBagForSagaStorage(); using (var session = await configuration.SynchronizedStorage.OpenSession(savingContextBag, default)) { await SaveSagaWithSession(saga1, session, savingContextBag); await SaveSagaWithSession(saga2, session, savingContextBag); await session.CompleteAsync(default);