public void ColumnMigratorInfo_ShouldBeIgnored()
        {
            var member     = typeof(ColumnMigratorInfoTestModel).GetProperty(nameof(ColumnMigratorInfoTestModel.ShouldBeIgnored));
            var memberInfo = ColumnMigratorInfo.FromMemberInfo(member);

            Assert.IsNull(memberInfo);
        }
        public void ColumnMigratorInfo_ResultColumn()
        {
            var member     = typeof(ColumnMigratorInfoTestModel).GetProperty(nameof(ColumnMigratorInfoTestModel.Result));
            var memberInfo = ColumnMigratorInfo.FromMemberInfo(member);

            Assert.IsNull(memberInfo);
        }
        public void ColumnMigratorInfo_ShouldBeRenamed()
        {
            var member     = typeof(ColumnMigratorInfoTestModel).GetProperty(nameof(ColumnMigratorInfoTestModel.ShouldBeRenamed));
            var memberInfo = ColumnMigratorInfo.FromMemberInfo(member);

            Assert.IsNotNull(memberInfo);
            Assert.AreEqual("RenamedColumn", memberInfo.ColumnName);
        }
        public void ColumnMigratorInfo_ComputedColumn()
        {
            var member     = typeof(ColumnMigratorInfoTestModel).GetProperty(nameof(ColumnMigratorInfoTestModel.Computed));
            var memberInfo = ColumnMigratorInfo.FromMemberInfo(member);

            Assert.IsNotNull(memberInfo);
            Assert.AreEqual("Computed", memberInfo.ColumnName);
        }
        public ICreateTableColumnQueryProvider <T> AddColumn <TMember>(Expression <Func <T, TMember> > memberExpression)
        {
            var member = memberExpression.GetMember();
            var column = ColumnMigratorInfo.FromMemberInfo(member);

            AddColumn(column);
            return(this);
        }
        public void ColumnMigratorInfo_nullable_string()
        {
            var member     = typeof(ColumnMigratorInfoTestModel).GetProperty(nameof(ColumnMigratorInfoTestModel.NullableName));
            var memberInfo = ColumnMigratorInfo.FromMemberInfo(member);

            Assert.IsNotNull(memberInfo);
            Assert.AreEqual("NullableName", memberInfo.ColumnName);
            Assert.IsTrue(memberInfo.AllowNull);
            Assert.IsFalse(memberInfo.IsPrimaryKey);
            Assert.IsFalse(memberInfo.IsAutoIncrement);
        }