1

假设我有一个看起来像这样的方法:

def raise_if_client_status_error(xml_resp) # xml_resp is Nokogiri::XML object
  unless xml_resp.at('StatusCode').text == 'Success'
    raise ClientError, xml_resp.at('StatusMessage').text
  end
end

是否可以创建一个 xml_resp_mock 并将链式调用存根.at('StatusCode').text——以返回“成功”?如果可能的话,我不确定要使用的语法。

4

1 回答 1

2

没有必要在您的测试中模拟 Nokogiri,因为它没有表现出任何在 c2 上模拟的理由在 wikipedia 上使用的理由。最好是传入一个文件 <StatusCode>Success</StatusCode>。最好模拟通常从网络读取 xml 响应的对象的方法。

于 2012-03-26T14:40:17.073 回答