Example #1
0
        public static void Binary(SqlType type, Func <SqlType, Func <ISqlValue, ISqlValue, ISqlValue> > selector, object value1, object value2, object expected)
        {
            var x   = SqlValueUtil.FromObject(value1);
            var y   = SqlValueUtil.FromObject(value2);
            var exp = SqlValueUtil.FromObject(expected);

            var op     = selector(type);
            var result = op(x, y);

            Assert.Equal(exp, result);
        }
Example #2
0
        public static void Binary(SqlType type, Func <SqlType, Func <ISqlValue, ISqlValue, SqlBoolean> > selector, object value1, object value2, bool expected)
        {
            var x = SqlValueUtil.FromObject(value1);
            var y = SqlValueUtil.FromObject(value2);

            var op     = selector(type);
            var result = op(x, y);

            Assert.NotNull(result);
            Assert.Equal(expected, (bool)result);
        }
Example #3
0
        public void Compare(bool value1, object value2, int expected)
        {
            var a = (SqlBoolean)value1;
            var b = SqlValueUtil.FromObject(value2);

            Assert.True((a as ISqlValue).IsComparableTo(b));

            var result = a.CompareTo(b);

            Assert.Equal(expected, result);
        }
Example #4
0
        public static void Cast(SqlType srcType, object value, SqlType destType, object expected)
        {
            var x = SqlValueUtil.FromObject(value);

            Assert.True(srcType.CanCastTo(x, destType));

            var exp = SqlValueUtil.FromObject(expected);

            var result = srcType.Cast(x, destType);

            Assert.Equal(exp, result);
        }
        private static void BinaryOp(Func <SqlNull, ISqlValue, bool> op, object other, bool expected)
        {
            var null1  = SqlNull.Value;
            var value1 = SqlValueUtil.FromObject(other);

            var result = op(null1, value1);

            var b = (SqlBoolean)result;
            var expectedNumber = (SqlBoolean)expected;

            Assert.Equal(expectedNumber, b);
        }
		public static void CastTo(SqlTypeCode srcTypeCode, bool value, SqlTypeCode destTypeCode, int p, int s, object expected) {
			var b = (SqlBoolean) value;
			var srcType = PrimitiveTypes.Boolean(srcTypeCode);
			var destType = PrimitiveTypes.Type(destTypeCode, new {precision = p, scale = s, maxSize = p});

			Assert.True(srcType.CanCastTo(b, destType));

			var result = srcType.Cast(b, destType);
			var expectedValue = SqlValueUtil.FromObject(expected);

			Assert.Equal(expectedValue, result);
		}
Example #7
0
        public static void Serialize(SqlTypeCode typeCode, int precision, int scale, object value)
        {
            var type     = PrimitiveTypes.Type(typeCode, new { precision, size = precision, maxSize = precision, scale });
            var sqlValue = SqlValueUtil.FromObject(value);

            var obj    = new SqlObject(type, sqlValue);
            var result = BinarySerializeUtil.Serialize(obj);

            Assert.Equal(obj, result);
            Assert.Equal(type, result.Type);
            Assert.Equal(sqlValue, result.Value);
        }
        public static void CastToString(string value, SqlTypeCode destTypeCode, int size, string expexted)
        {
            var dts = SqlDayToSecond.Parse(value);

            var type     = new SqlDayToSecondType();
            var destType = PrimitiveTypes.Type(destTypeCode, new { size });
            var result   = type.Cast(dts, destType);

            var exp = SqlValueUtil.FromObject(expexted);

            Assert.NotNull(result);
            Assert.Equal(exp, result);
        }
Example #9
0
        public static void EnumerateItems(params object[] values)
        {
            var array = new SqlArray(values.Select(NewExpression).ToArray());

            Assert.Equal(values.Length, array.Length);
            Assert.True(array.Length > 0);

            var expected = SqlObject.New(SqlValueUtil.FromObject(values[0]));
            var first    = array.First();

            Assert.IsType <SqlConstantExpression>(first);

            var itemValue = ((SqlConstantExpression)first).Value;

            Assert.Equal(expected, itemValue);
        }
Example #10
0
        public static void Create(params object[] values)
        {
            var array = new SqlArray(values.Select(NewExpression).ToArray());

            Assert.Equal(values.Length, array.Length);
            Assert.True(array.Length > 0);

            var expected = SqlObject.New(SqlValueUtil.FromObject(values[0]));
            var item     = array[0];

            Assert.IsType <SqlConstantExpression>(item);

            var itemValue = ((SqlConstantExpression)item).Value;

            Assert.Equal(expected, itemValue);
        }
Example #11
0
        private static SqlObject FromObject(object value)
        {
            if (value == null)
            {
                return(SqlObject.Null);
            }

            if (value is SqlTypeCode &&
                (SqlTypeCode)value == SqlTypeCode.Unknown)
            {
                return(SqlObject.Unknown);
            }

            var sqlValue = SqlValueUtil.FromObject(value);
            var sqlType  = SqlTypeUtil.FromValue(value);

            return(new SqlObject(sqlType, sqlValue));
        }
        public static void IsComparableTo(object other, bool expected)
        {
            var value = SqlValueUtil.FromObject(other);

            Assert.Equal(expected, (SqlNull.Value as ISqlValue).IsComparableTo(value));
        }
        public static void CompareTo(object other, int expected)
        {
            var value = SqlValueUtil.FromObject(other);

            Assert.Equal(expected, (SqlNull.Value as IComparable <ISqlValue>).CompareTo(value));
        }