В нашей среде мы используем пользовательский доступ к данным для доступа к нашей устаревшей базе данных Oracle. Это позволяет нам выполнять вызовы хранимых процедур и возвращать результаты в виде DataTable или в виде списка пар имя / значение, если возвращаемые данные представляют собой только одну строку данных. При каждом вызове от нас требуется создать экземпляр нового объекта из этой библиотеки, а затем убедиться, что он удаляется после завершения.
Например, мы могли бы сделать что-то вроде этого:
DataReader reader = new DataReader("StoredProcedureName");
reader.AddParameter(name, DbType.Array, ParameterDirection.Input, data);
DataTable dt;
try
{
dt = reader.Open();
}
finally
{
reader.Dispose();
}
Моя проблема в том, что я не уверен, как тестировать методы, которые делают вызовы базы данных, используя эту библиотеку. Я относительно новичок в модульном тестировании и стараюсь использовать его усердно. Я начал использовать moq и написал кучу тестов для моего другого кода приложения. Я не знаю, как я могу издеваться над библиотекой базы данных. Имеет ли смысл создавать фабричный объект, который будет создавать новые экземпляры устройства чтения данных, а затем издеваться над фабрикой?
Заранее спасибо.