我在我的控制器中有一个这样定义的函数:
def respond_with(action = 0, &block)
if block_given?
response = get_response
block.call( MyResponse.new(response) )
end
end
有了它,我可以查询响应对象:
respond_with do |response|
case response.status
when 'ok'
when 'errors'
#etc etc...
end
如果我愿意,我当然可以不加限制地调用它。
如果我有一个返回值的函数,它将类似于
controller.should_receive(:respond_with).with(DO_SOMETHING).and_return(something)
没关系
def respond_with(action = 0)
...
response
end
如何检查 |response| 中是否使用特定值调用了块 ?