是否有可能存根nokogiri xml搜索方法?

时间:2012-03-26 03:33:16

标签: ruby rspec mocking nokogiri stubbing

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

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 - 返回'成功'?我不确定要使用的语法,如果可能的话。

1 个答案:

答案 0 :(得分:2)

没有必要在测试中模仿Nokogiri,因为它没有展示reasons to mock on c2reasons for use on wikipedia中的任何一个。最好传递一个带有<StatusCode>Success</StatusCode>的文档。最好模拟通常从网络读取xml响应的对象的方法。