public void ThrowArgumentException_WhenEntityStateIsDleted()
        {
            // Arrange.
            DbContextMock dbContext = new DbContextMock();
            PersonDataEntityMock entity = new PersonDataEntityMock();
            dbContext.Entry(entity).State = EntityState.Deleted;

            // Act & Assert.
            Ensure.ArgumentExceptionIsThrown(() =>
            {
                dbContext.ThrowIfAttached(entity);
            }, "entity");
        }
        public void DoNotThrowException_WhenEntityStateIsDetached()
        {
            // Arrange.
            DbContextMock dbContext = new DbContextMock();
            PersonDataEntityMock entity = new PersonDataEntityMock();
            dbContext.Entry(entity).State = EntityState.Detached;

            // Act & Assert.
            Ensure.NoExceptionIsThrown(() =>
            {
                dbContext.ThrowIfAttached(entity);
            });
        }
        public void RunInExpectedTime()
        {
            // Arrange.
            DbContextMock dbContext = new DbContextMock();
            PersonDataEntityMock entity = new PersonDataEntityMock();
            dbContext.Entry(entity).State = EntityState.Detached;

            // Act & Assert.
            Ensure.ActionRunsInExpectedTime(
                () =>
                {
                    dbContext.ThrowIfAttached(entity);
                },
                ExecutionTimeType.Normal);
        }