30.06.2013 Views

SQL Server Team-based Development - Red Gate Software

SQL Server Team-based Development - Red Gate Software

SQL Server Team-based Development - Red Gate Software

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

public void Table_single_line_insert_into_Person_Address()<br />

{<br />

// for simplicity assume we have a<br />

// valid connection already opened.<br />

SqlCommand cmd = new SqlCommand("," conn);<br />

string randomNumber = new Random(DateTime.Now<br />

.Millisecond)<br />

.Next(10, 1000).ToString();<br />

DateTime date = DateTime.Parse(DateTime.Now<br />

.ToString("yyyy-MM-dd HH:mm:ss.ff"));<br />

// insert a random row and use output<br />

// so we don't have to do a read<br />

cmd.CommandText = @"INSERT INTO Person.Address(<br />

AddressLine1, AddressLine2,<br />

City, StateProvinceID,<br />

PostalCode, ModifiedDate)<br />

OUTPUT inserted.*<br />

VALUES ('Test Address Line 1 " +<br />

randomNumber + @"',<br />

'Test Address Line 2 " +<br />

randomNumber + @"',<br />

'Test City " +<br />

randomNumber + "', 79,<br />

'98011', '" +<br />

date.ToString("yyyy-MM-dd HH:mm:ss.ff") + "')";<br />

// insert and return inserted data<br />

DataSet ds = new DataSet();<br />

ds.Load(cmd.ExecuteReader(),<br />

LoadOption.OverwriteChanges,<br />

"InsertedData");<br />

DataRow row = ds.Tables["InsertedData"].Rows[0];<br />

Assert.AreEqual(row["AddressLine1"].ToString(),<br />

"Test Address Line 1 " + randomNumber,<br />

"Inserted value different from expected value.");<br />

Assert.AreEqual(row["AddressLine2"].ToString(),<br />

"Test Address Line 2 " + randomNumber,<br />

"Inserted value different from expected value.");<br />

Assert.AreEqual(row["City"].ToString(),<br />

"Test City " + randomNumber,<br />

"Inserted value different from expected value.");<br />

Assert.AreEqual(row["StateProvinceID"], 79,<br />

"Inserted value different from expected value.");<br />

Assert.AreEqual(row["PostalCode"].ToString(), "98011,"<br />

"Inserted value different from expected value.");<br />

159<br />

Chapter 5: Testing Databases

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!