Chr*_*ird 5 ruby rspec google-api-ruby-client
我正在尝试模拟一些使用google-api-ruby-client的方法来进行一些测试,而无需实际调用api。身份验证以及客户端和活动方法取自github页上的示例(请参见上面的链接),这就是为什么我在这里跳过了。
该示例中的方法如下:
def activities
result = client.execute(
:api_method => plus.activities.list,
:parameters => {'collection' => 'public', 'userId' => 'me'}
)
return result.data
end
Run Code Online (Sandbox Code Playgroud)
我以前曾尝试对客户端方法(甚至与execute链接)进行存根处理,但是这导致了对oauth的授权请求,gem在其下使用了加号,然后在plus.activities.list方法中使用了模拟。有没有一种方法可以直接模拟client.exectute以在跳过整个链时返回有用的东西?
我不确定我是否正确理解你的问题,但也许有点疯狂的东西会起作用
我假设你的方法是在客户端模型中,所以也许类似的方法会起作用
Client.stub_chain(:client, :execute).and_return(true)
Run Code Online (Sandbox Code Playgroud)
当然,如果您的模型有不同的名称,您必须进行调整。我不确定,但你可以尝试一下