public void BusinessEntityNotIsNew()
        {
            var buUpdated = BusinessEntity.From(EntityTestId.GetNext(), VersionId.Next(VersionId.New()));
            var isNew     = new BusinessEntityIsNew();

            Assert.False(isNew.IsSatisfiedBy(buUpdated));
        }
Exemple #2
0
        public static UserAggregationRoot ReconstructFrom(User currentState)
        {
            var nextVersion = currentState.IsValid?
                              VersionId.Next(currentState.Version):currentState.Version;
            var user = User.From(currentState.Identity, currentState.Name, nextVersion);

            return(new UserAggregationRoot(user));
        }
        public void Version_get_gr_and_lt()
        {
            var version = VersionId.From(1);
            var next    = VersionId.Next(version);

            Assert.True(version < next);
            Assert.True(next > version);
        }
        public void Version_get_next()
        {
            var version   = VersionId.New();
            var next      = VersionId.Next(version);
            var nextCheck = version.Value + 1;

            Assert.Equal(next.Value, nextCheck);
        }
        public void Remove(User entity)
        {
            var oldState = Get(entity.Identity);

            if (VersionId.Next(oldState.Version) > entity.Version)
            {
                throw new DbUpdateConcurrencyException("This version is not the most updated for this object.");
            }

            var entry = entity.ToUserState();

            DbContext.Users.Remove(entry);
        }
        public void Add(User entity)
        {
            var entry = entity.ToUserState();

            var oldState = Get(entity.Identity);

            if (oldState.Equals(User.Empty()))
            {
                DbContext.Users.Add(entry);
            }
            else
            {
                if (VersionId.Next(oldState.Version) > entity.Version)
                {
                    throw new DbUpdateConcurrencyException("This version is not the most updated for this object.");
                }

                DbContext.Entry(oldState).CurrentValues.SetValues(entry);
            }
        }
Exemple #7
0
 public static BusinessEntityAggregateRoot ReconstructFrom(BusinessEntity entity)
 {
     return(new BusinessEntityAggregateRoot(BusinessEntity.From(entity.Identity, VersionId.Next(entity.Version))));
 }