小编Sim*_*vin的帖子

使用Moq验证参考参数的值

我刚刚切换到Moq并遇到了问题.我正在测试一个创建业务对象的新实例的方法,从用户输入值设置对象的属性,并调用方法(SaveCustomerContact)来保存新对象.业务对象作为ref参数传递,因为它通过远程处理层.我需要测试传递给SaveCustomerContact的对象是否按预期设置了所有属性,但因为它在控制器方法中被实例化为new,所以我似乎无法这样做.

public void AddContact() {

    var contact = new CustomerContact() { CustomerId = m_model.CustomerId };

    contact.Name = m_model.CustomerContactName;
    contact.PhoneNumber = m_model.PhoneNumber;
    contact.FaxNumber = m_model.FaxNumber;
    contact.Email = m_model.Email;
    contact.ReceiveInvoiceFlag = m_model.ReceiveInvoiceFlag;
    contact.ReceiveStatementFlag = m_model.ReceiveStatementFlag;
    contact.ReceiveContractFlag = m_model.ReceiveContractFlag;
    contact.EmailFlag = m_model.EmailFlag;
    contact.FaxFlag = m_model.FaxFlag;
    contact.PostalMailFlag = m_model.PostalMailFlag;
    contact.CustomerLocationId = m_model.CustomerLocationId;

    RemotingHandler.SaveCustomerContact( ref contact );
}
Run Code Online (Sandbox Code Playgroud)

这是测试:

[TestMethod()]
public void AddContactTest() {

    int customerId = 0;

    string name = "a";

    var actual = new CustomerContact();

    var expected = new CustomerContact() {
        CustomerId = …
Run Code Online (Sandbox Code Playgroud)

c# tdd mocking moq-3

18
推荐指数
3
解决办法
2万
查看次数

标签 统计

c# ×1

mocking ×1

moq-3 ×1

tdd ×1