Exemplo n.º 1
0
        public void VarChar_WithInvalidSize_ThrowsArgumentOutOfRange(int size)
        {
            var ex = Assert.Throws <ArgumentOutOfRangeException>(() => SqlDataType.VarChar(size));

            Assert.Equal(nameof(size), ex.ParamName);
            Assert.Equal(size, ex.ActualValue);
        }
Exemplo n.º 2
0
        public void VisitExpression_WithSqlDataType_DispatchesVisit()
        {
            var fixture = new Fixture().Customize(new AutoMoqCustomization());
            var mock    = fixture.Freeze <Mock <SqlVisitor> >();
            var visitor = mock.Object;

            visitor.Visit((SqlExpression)SqlDataType.VarChar(10));
            mock.Verify(_ => _.Visit(It.IsAny <SqlDataType>()), Times.Once);
        }
Exemplo n.º 3
0
        public void VarChar_ReturnsVarCharDataTypeOfSpecifiedSize(int size)
        {
            var dataType = SqlDataType.VarChar(size);

            Assert.NotNull(dataType);
            Assert.Equal(SqlDataTypeNames.VarChar, dataType.Name);
            Assert.NotNull(dataType.Size);
            Assert.Equal(size, dataType.Size);
        }
Exemplo n.º 4
0
        public static IEnumerable <object[]> WriteDataTypeData(bool lowerCase)
        {
            yield return(new object[] { SqlDataType.BigInt(), "BIGINT".ToLowerIf(lowerCase) });

            yield return(new object[] { SqlDataType.VarChar(16), "VARCHAR(16)".ToLowerIf(lowerCase) });

            yield return(new object[] { SqlDataType.Float(9), "FLOAT(9)".ToLowerIf(lowerCase) });

            yield return(new object[] { SqlDataType.Decimal(16), "DECIMAL(16)".ToLowerIf(lowerCase) });

            yield return(new object[] { SqlDataType.Decimal(16, 6), "DECIMAL(16, 6)".ToLowerIf(lowerCase) });
        }
Exemplo n.º 5
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 });
        }