public void SetParameter_ShouldThrowArgumentNullException_WhenValueIsNull()
        {
            //ARRANGE
            const string parameterName = "testParameterName";
            var          parameter     = new SpecifiedParameter(parameterName);

            //ASSERT
            Assert.Throws <ArgumentNullException>(() => parameter.SetParameter(null));
        }
        public void GetOutputValue_ShouldReturnValueFromDataParameter()
        {
            //ARRANGE
            const string parameterName = "testParameterName";
            var          parameter     = new SpecifiedParameter(parameterName);

            const int        value         = 5;
            IDbDataParameter dataParameter = A.Fake <IDbDataParameter>();

            dataParameter.CallsTo(x => x.Value)
            .Returns(value);

            //ACT
            parameter.SetParameter(dataParameter);
            var valueFromParameter = parameter.GetOutputValue <int>();

            //ASSERT
            Assert.AreEqual(value, valueFromParameter);
            dataParameter.CallsTo(x => x.Value)
            .MustHaveHappened(Repeated.Exactly.Once);
        }
Beispiel #3
0
        private void AddParameter(Context.Infrastructure.AdoExecutorContext context, SpecifiedParameter parameter)
        {
            IDbDataParameter dataParameter = context.Configuration.DataObjectFactory.CreateDataParameter();

            dataParameter.ParameterName = parameter.ParameterName;
            dataParameter.Value         = parameter.Value ?? DBNull.Value;

            if (parameter.DbType.HasValue)
            {
                dataParameter.DbType = parameter.DbType.Value;
            }

            if (parameter.Direction.HasValue)
            {
                dataParameter.Direction = parameter.Direction.Value;
            }

            if (parameter.Precision.HasValue)
            {
                dataParameter.Precision = parameter.Precision.Value;
            }

            if (parameter.Scale.HasValue)
            {
                dataParameter.Scale = parameter.Scale.Value;
            }

            if (parameter.Size.HasValue)
            {
                dataParameter.Size = parameter.Size.Value;
            }

            parameter.SetParameter(dataParameter);

            context.Command.Parameters.Add(dataParameter);
        }