Мой модульный тест продолжает получать следующую ошибку: «System.InvalidOperationException: Соединение не открыто.»
Тест
[TestFixture]
public class Test
{
[Test]
public void Test1()
{
NpgsqlConnection connection = MockRepository.GenerateStub<NpgsqlConnection>();
// Tried to fake the open connection
connection.Stub(x => x.State).Return(ConnectionState.Open);
connection.Stub(x => x.FullState).Return(ConnectionState.Open);
DbQueries queries = new DbQueries(connection);
bool procedure = queries.ExecutePreProcedure("201003");
Assert.IsTrue(procedure);
}
}
проверяемый код
using System.Data;
using Npgsql;
public class DbQueries
{
private readonly NpgsqlConnection _connection;
public DbQueries(NpgsqlConnection connection)
{
_connection = connection;
}
public bool ExecutePreProcedure(string date)
{
var command = new NpgsqlCommand("name_of_procedure", _connection);
command.CommandType = CommandType.StoredProcedure;
NpgsqlParameter parameter = new NpgsqlParameter {DbType = DbType.String, Value = date};
command.Parameters.Add(parameter);
command.ExecuteScalar();
return true;
}
}
Как бы вы протестировали код, используя Rhino Mocks 3.6?
PS. NpgsqlConnection - это соединение с сервером PostgreSQL.