Я работаю над модульными тестами и я сделал тест, который проверяет следующий метод:команда SqlConnection не проливает Exception на удалениях
общественного недействительный DeleteTransport (интермедиат ID)
{ SqlConnection sqlConnection = new SqlConnection(SQL_CONN); try { sqlConnection.Open(); SqlCommand dbCommand = sqlConnection.CreateCommand(); dbCommand.CommandText = string.Format("DELETE FROM dbo.Transports WHERE ID={0}", id); SqlDataAdapter dap = new SqlDataAdapter(dbCommand); var ds = new DataSet("Transports"); dap.Fill(ds); } finally { sqlConnection.Close(); } }
В Unit Test, я даю не существующий id в качестве параметра, но метод не генерирует исключение SqlException.
Как выбросить исключение, если идентификатор не существует?
Я использую:
- Visual Studio 2012
- TFS
- Sql Server 2008
Там не является исключением, так как нет неисправна ситуация. После выполнения инструкции в Transports с запрошенным идентификатором нет записи. – Anton
Почему вы используете DataSet и SqlDataAdapter для этого в первую очередь? Почему бы просто не вызвать ExecuteNonQuery и посмотреть, какой результат? –