Beispiel #1
0
        public void Char_WithInvalidSize_ThrowsArgumentOutOfRange(int size)
        {
            var ex = Assert.Throws <ArgumentOutOfRangeException>(() => SqlDataType.Char(size));

            Assert.Equal(nameof(size), ex.ParamName);
            Assert.Equal(size, ex.ActualValue);
        }
Beispiel #2
0
        public void Char_ReturnsCharDataTypeOfSpecifiedSize(int size)
        {
            var dataType = SqlDataType.Char(size);

            Assert.NotNull(dataType);
            Assert.Equal(SqlDataTypeNames.Char, dataType.Name);
            Assert.NotNull(dataType.Size);
            Assert.Equal(size, dataType.Size);
        }
Beispiel #3
0
        public static IEnumerable <object[]> EqualsData(bool exactTypeOnly)
        {
            var dataType = new SqlDataType("FOOBAR");

            if (!exactTypeOnly)
            {
                yield return(new object[] { dataType, "FOOBAR", false });
            }
            yield return(new object[] { dataType, (SqlDataType)null, false });

            yield return(new object[] { dataType, new SqlDataType("NONE"), false });

            yield return(new object[] { dataType, new SqlDataType("FOOBAR"), true });

            yield return(new object[] { dataType, dataType, true });

            yield return(new object[] { SqlDataType.Int(), SqlDataType.Int(), true });

            yield return(new object[] { SqlDataType.Int(), SqlDataType.BigInt(), false });

            yield return(new object[] { SqlDataType.VarChar(5), SqlDataType.VarChar(10), false });

            yield return(new object[] { SqlDataType.VarChar(5), SqlDataType.Char(10), false });

            yield return(new object[] { SqlDataType.VarChar(5), SqlDataType.VarChar(5), true });

            yield return(new object[] { SqlDataType.VarChar(5), SqlDataType.Float(5), false });

            yield return(new object[] { SqlDataType.VarChar(5), SqlDataType.Float(6), false });

            yield return(new object[] { SqlDataType.VarChar(5), null, false });

            yield return(new object[] { SqlDataType.Float(), SqlDataType.Float(10), false });

            yield return(new object[] { SqlDataType.Float(), new SqlPrecisionDataType("DOUBLE"), false });

            yield return(new object[] { SqlDataType.Float(), SqlDataType.Float(), true });

            yield return(new object[] { SqlDataType.Float(5), SqlDataType.Float(10), false });

            yield return(new object[] { SqlDataType.Float(5), SqlDataType.Float(5), true });

            yield return(new object[] { SqlDataType.Float(5), SqlDataType.VarChar(42), false });

            yield return(new object[] { SqlDataType.Float(5), null, false });

            yield return(new object[] { SqlDataType.Decimal(), SqlDataType.Decimal(10, 3), false });

            yield return(new object[] { SqlDataType.Decimal(), SqlDataType.Float(10), false });

            yield return(new object[] { SqlDataType.Decimal(), SqlDataType.Decimal(), true });

            yield return(new object[] { SqlDataType.Decimal(5, 3), SqlDataType.Decimal(10, 3), false });

            yield return(new object[] { SqlDataType.Decimal(5, 3), SqlDataType.Decimal(5, 3), true });

            yield return(new object[] { SqlDataType.Decimal(5, 3), SqlDataType.VarChar(42), false });

            yield return(new object[] { SqlDataType.Decimal(5, 3), SqlDataType.Decimal(5, 4), false });

            yield return(new object[] { SqlDataType.Decimal(5, 3), null, false });


            var self = (SqlDataType)SqlDataType.VarChar(5);

            yield return(new object[] { self, self, true });

            self = SqlDataType.Float(5);
            yield return(new object[] { self, self, true });

            self = SqlDataType.Decimal(10, 3);
            yield return(new object[] { self, self, true });
        }