1

我正在尝试在单元测试之外使用 mocha 来模拟 Net::HTTPResponse 对象。这是一个简单的例子:

#!/usr/bin/env ruby -w

require 'net/http'

require 'rubygems'
require 'mocha'

response = mock('Net::HTTPResponse')
response.stubs(:code => '500', :message => "Failed", :content_type => "text/plaint", :body => '')

我收到此错误:

undefined method `mock' for main:Object (NoMethodError)
4

1 回答 1

2

我建议为此使用 fakeweb gem。它旨在消除http请求。

require 'rubygems'
require 'fakeweb'

FakeWeb.register_uri(:get, "http://something.com/", :body => "", :status => ["500", "Server Error"])

更多信息:https ://github.com/chrisk/fakeweb

于 2011-12-25T18:41:48.697 回答