Esempio n. 1
0
		public void AddParameter_CreateParameter_CorrectParameterAdded() {
			var dbCommand = A.Fake<IDbCommand>();
			var parameterCollection = A.Fake<IDataParameterCollection>();
			A.CallTo(() => dbCommand.Parameters).Returns(parameterCollection);
			
			IDataParameter parameter = null;

			A.CallTo(() => parameterCollection.Add(A<object>.Ignored)).WithAnyArguments().Invokes(x => parameter = x.GetArgument<IDataParameter>(0)).Returns(1);

			var command = new Command(dbCommand, null, null);

			var dummyObject = A.Dummy<MyDummyClass>();

			command.AddParameter("MyParameter", DbType.Guid, 242, ParameterDirection.InputOutput, 1, 1, "myColumn", DataRowVersion.Original, dummyObject);
			IDbDataParameter dbParamter = parameter as IDbDataParameter;
			Assert.IsNotNull(dbParamter);
			Assert.AreEqual("MyParameter", dbParamter.ParameterName);
			Assert.AreEqual(DbType.Guid, dbParamter.DbType);
			Assert.AreEqual(ParameterDirection.InputOutput, dbParamter.Direction);
			Assert.AreEqual(242, dbParamter.Size);
			Assert.AreEqual(DataRowVersion.Original, dbParamter.SourceVersion);
			Assert.AreEqual(1, dbParamter.Precision);
			Assert.AreEqual(1, dbParamter.Scale);
			Assert.AreEqual("myColumn", dbParamter.SourceColumn);
			Assert.AreEqual(dummyObject, dbParamter.Value);
		}