【发布时间】:2020-09-10 23:58:04
【问题描述】:
def _send(body_params)
merge_body body_params
response = self.class.post uri, request_options
build_response response
end
private
def merge_body(params)
request_options.merge!(body: params)
end
def headers
{ 'content-type' => 'application/json' }
end
def build_response(resp)
{
body: resp.body,
response_code: resp.code.to_i
}
end
def request_options
@request_options ||= {
headers: headers,
query: query
}
end
def query
{ token: access_token }
end
在这个例子中,用 rspec 测试这个私有方法的最佳方法和实践是什么?确保所有标头、查询和 request_options 匹配
【问题讨论】:
-
不要测试私有方法。仅测试公共接口,包括您的私有方法。
-
您确定要将
request_options修改为merge!。应该是request_options.merge(body: params)?
标签: ruby-on-rails ruby rspec