Tôi đã chế nhạo một vài phương thức của lớp Truy cập dữ liệu của tôi, nhưng trong một số phương thức, giá trị của một tham số đầu ra SQL được thiết lập. Làm thế nào tôi có thể chế nhạo cái này?Tham số đầu ra SQL mô phỏng
Phương pháp:
var wrappedParameters = new SqlParameter[3]; wrappedParameters[0] = new SqlParameter("@username",username); wrappedParameters[1] = new SqlParameter("@password",password); wrappedParameters[2] = new SqlParameter("returnValue",SqlDbType.Int) { Direction =ParameterDirection.ReturnValue }; dal.ExecuteUsingStoredProcedure("GetUser", wrappedParameters);
Mocking (Tôi đã thử sử dụng "OutRef", nhưng điều đó không làm việc):
using (mocks.Record()) { Expect.Call(dal.ExecuteUsingStoredProcedure("",> null)).Return(true).IgnoreArguments().OutRef(1); }
Nhưng đó didnt làm việc. Khi tôi thực hiện SP GetUser giá trị trả về param được thiết lập, nhưng tôi không biết làm thế nào để giả lập
Cố gắng sử dụng IDbParameter trên SqlParameter khi có thể, sau đó bạn có thể giả lập nội dung trái tim của bạn. –