コード例 #1
0
        public void It_should_persist_successfully()
        {
            var saga1 = new SagaWithoutUniqueProperties()
            {
                Id              = Guid.NewGuid(),
                UniqueString    = "whatever",
                NonUniqueString = "notUnique"
            };

            SaveSaga(saga1);

            UpdateSaga <SagaWithoutUniqueProperties>(saga1.Id, s =>
            {
                s.NonUniqueString = "notUnique2";
                s.UniqueString    = "whatever2";
            });
        }
        public void It_should_persist_successfully()
        {
            var saga1 = new SagaWithoutUniqueProperties()
                            {
                                Id = Guid.NewGuid(),
                                UniqueString = "whatever",
                                NonUniqueString = "notUnique"
                            };

            SaveSaga(saga1);
            
            UpdateSaga<SagaWithoutUniqueProperties>(saga1.Id, s =>
                                                                  {
                                                                      s.NonUniqueString = "notUnique2";
                                                                      s.UniqueString = "whatever2";
                                                                  });
        }
コード例 #3
0
        public void It_should_throw_when_version_changed()
        {
            var saga1 = new SagaWithoutUniqueProperties()
            {
                Id              = Guid.NewGuid(),
                UniqueString    = "whatever",
                NonUniqueString = "notUnique"
            };

            SaveSaga(saga1);

            UpdateSaga <SagaWithoutUniqueProperties>(saga1.Id, s =>
            {
                Assert.AreEqual(s.Version, 0);
                s.NonUniqueString = "notUnique2";
                s.UniqueString    = "whatever2";

                ChangeSagaVersionManually <SagaWithoutUniqueProperties>(s.Id, 1);
            });
        }
        public void It_should_throw_when_version_changed()
        {
            var saga1 = new SagaWithoutUniqueProperties()
                            {
                                Id = Guid.NewGuid(),
                                UniqueString = "whatever",
                                NonUniqueString = "notUnique"
                            };

            SaveSaga(saga1);

            UpdateSaga<SagaWithoutUniqueProperties>(saga1.Id, s =>
            {
                Assert.AreEqual(s.Version, 0);
                s.NonUniqueString = "notUnique2";
                s.UniqueString = "whatever2";

                ChangeSagaVersionManually<SagaWithoutUniqueProperties>(s.Id, 1);
            });
        }
        public async Task It_should_persist_successfully()
        {
            var saga1 = new SagaWithoutUniqueProperties()
            {
                Id              = Guid.NewGuid(),
                UniqueString    = "whatever",
                NonUniqueString = "notUnique"
            };

            await SaveSaga(saga1).ConfigureAwait(false);

            await UpdateSaga <SagaWithoutUniqueProperties>(saga1.Id, s =>
            {
                s.NonUniqueString = "notUnique2";
                s.UniqueString    = "whatever2";
            }).ConfigureAwait(false);

            saga1 = await LoadSaga <SagaWithoutUniqueProperties>(saga1.Id).ConfigureAwait(false);

            Assert.AreEqual("notUnique2", saga1.NonUniqueString);
        }
        public async Task It_should_throw_when_version_changed()
        {
            var saga1 = new SagaWithoutUniqueProperties()
            {
                Id              = Guid.NewGuid(),
                UniqueString    = "whatever",
                NonUniqueString = "notUnique"
            };

            await SaveSaga(saga1).ConfigureAwait(false);

            Assert.ThrowsAsync <SagaMongoDbConcurrentUpdateException>(() =>
                                                                      UpdateSaga <SagaWithoutUniqueProperties>(saga1.Id, s =>
            {
                Assert.AreEqual(s.Version, 0);
                s.NonUniqueString = "notUnique2";
                s.UniqueString    = "whatever2";

                ChangeSagaVersionManually <SagaWithoutUniqueProperties>(s.Id, 1);
            })
                                                                      );
        }