public void ModelToSqlCommandBuilder_QueryIsWhiteSpace_ThrowArgumentIsNullException() { //Arrange var model = RandomizerHelper.GetNewRandomEvent(); var query = " "; var sqlConnection = new SqlConnection(); //Act + Assert Assert.Throws <ArgumentNullException>(() => SqlHelper.ModelToSqlCommandBuilder <Event>(model, query, sqlConnection)); }
public void ModelToSqlCommandBuilder_SqlConnectionIsNull_ThrowArgumentIsNullException() { //Arrange var model = RandomizerHelper.GetNewRandomEvent(); var query = RandomizerHelper.GetRandomString(); SqlConnection sqlConnection = null; //Act + Assert Assert.Throws <ArgumentNullException>(() => SqlHelper.ModelToSqlCommandBuilder <Event>(model, query, sqlConnection)); }
public void SqlReaderToModelBuilder_ValidSqlReader_ReturnCorrectEventModel() { //Arrange var expected = RandomizerHelper.GetNewRandomEvent(); mockDataReader.Setup(x => x.GetInt32(0)).Returns(expected.Id); mockDataReader.Setup(x => x.GetString(1)).Returns(expected.Name); mockDataReader.Setup(x => x.GetString(2)).Returns(expected.Description); mockDataReader.Setup(x => x.GetDecimal(3)).Returns(expected.Price); mockDataReader.Setup(x => x.GetDecimal(4)).Returns(expected.StudentPrice); mockDataReader.Setup(x => x.GetDateTime(5)).Returns(expected.Date); mockDataReader.Setup(x => x.GetString(6)).Returns(expected.Place); //Act var actual = SqlHelper.SqlReaderToModelBuilder <Event>(mockDataReader.Object); //Assert AssertEventAreEqual(expected, actual); }
public void ModelToSqlCommandBuilder_ValidArguments_ReturnVaidSqlCommandForEvent() { //Arrange var model = RandomizerHelper.GetNewRandomEvent(); var query = RandomizerHelper.GetRandomString(); var sqlConnection = new SqlConnection(); var expected = new SqlCommand(query, sqlConnection); expected.Parameters.Add("@Id", SqlDbType.Int).Value = model.Id; expected.Parameters.Add("@Name", SqlDbType.NVarChar).Value = model.Name; expected.Parameters.Add("@Description", SqlDbType.NVarChar).Value = model.Description; expected.Parameters.Add("@Price", SqlDbType.Decimal).Value = model.Price; expected.Parameters.Add("@StudentPrice", SqlDbType.Decimal).Value = model.StudentPrice; expected.Parameters.Add("@Date", SqlDbType.DateTime).Value = model.Date; expected.Parameters.Add("@Place", SqlDbType.NVarChar).Value = model.Place; //Act var actual = SqlHelper.ModelToSqlCommandBuilder <Event>(model, query, sqlConnection); //Assert AssertSqlCommandAreEqual(expected, actual); }