public void CorrelatedMessageShouldFindTheCorrectSaga() { var repository = new MongoDbStateMachineSagaRepository<TestSaga>(this._db); var initiatePolicy = new InitiatingSagaPolicy<TestSaga, InitiateSimpleSaga>(x => x.CorrelationId, x => false); var message = new InitiateSimpleSaga(this._sagaId); var context = new ConsumeContext<InitiateSimpleSaga>(ReceiveContext.Empty(), message); repository.GetSaga(context, message.CorrelationId, this.GetHandlers, initiatePolicy).Each(x => x(context)); List<TestSaga> sagas = repository.ByCorrelationId(this._sagaId).ToList(); Assert.AreEqual(1, sagas.Count); Assert.IsNotNull(sagas[0]); Assert.AreEqual(this._sagaId, sagas[0].CorrelationId); }
public void CorrelatedMessageShouldFindTheCorrectSaga() { var repository = new MongoDbStateMachineSagaRepository <TestSaga>(this._db); var initiatePolicy = new InitiatingSagaPolicy <TestSaga, InitiateSimpleSaga>(x => x.CorrelationId, x => false); var message = new InitiateSimpleSaga(this._sagaId); var context = new ConsumeContext <InitiateSimpleSaga>(ReceiveContext.Empty(), message); repository.GetSaga(context, message.CorrelationId, this.GetHandlers, initiatePolicy).Each(x => x(context)); List <TestSaga> sagas = repository.ByCorrelationId(this._sagaId).ToList(); Assert.AreEqual(1, sagas.Count); Assert.IsNotNull(sagas[0]); Assert.AreEqual(this._sagaId, sagas[0].CorrelationId); }