У меня есть метод, который принимает объект типа DatabaseParams. Этот класс имеет следующую структуру (упрощенную):
Код: Выделить всё
public class DatabaseParams
{
public string StoredProcName { get; private set; }
public SqlParameter[] Parameters { get; private set; }
public DatabaseParams(string storedProcName, SqlParameter[] spParams)
{
StoredProcName = storedProcName;
Parameters = spParams;
}
}
Код: Выделить всё
public interface IHelper
{
Task ExecuteScalarProcedureAsync(DatabaseParams data);
}
Я мог бы сделать это в RhinoMocks примерно так:
Код: Выделить всё
helperMock.Expect(m => m.ExecuteScalarProcedureAsync(Arg.Matches(
p => p.StoredProcName == "up_Do_Something"
&& p.Parameters[0].ParameterName == "Param1"
&& p.Parameters[0].Value.ToString() == "Param1Value"
&& p.Parameters[1].ParameterName == "Param2"
&& p.Parameters[1].Value.ToString() == "Param2Value"
))).Return(Task.FromResult(null));
Подробнее здесь: https://stackoverflow.com/questions/313 ... -to-method