以下は、API を取得して Google カレンダーを呼び出すために使用しようとしている方法です。スタブが何を返すべきかわかりません。通常の応答をキャプチャしてそのまま使用する必要がありますか、それとも最小セットのパラメーターを含む参照がありますか?
api = client.discovered_api('calendar', 'v3')
result = client.execute!(:api_method => api.calendar_list.list)
以下は、API を取得して Google カレンダーを呼び出すために使用しようとしている方法です。スタブが何を返すべきかわかりません。通常の応答をキャプチャしてそのまま使用する必要がありますか、それとも最小セットのパラメーターを含む参照がありますか?
api = client.discovered_api('calendar', 'v3')
result = client.execute!(:api_method => api.calendar_list.list)
Omniauth が独自のモック サポートを提供し、Google がPython モック ライブラリを提供していることはわかりますが、Ruby からのモックに対する Google の直接サポートについては知りません。
とはいえ、あなたの例を考えると、クライアントとAPIのテストダブルが必要になります。クライアントがどこから来ているのかは明らかではありませんが、それが何らかの形で double として確立されていると仮定すると、少なくとも次のようになります。
api = double('api')
client.should_receive(:discovered_api).and_return(api)
api.stub_chain(:calendar_list, :list)
client.should_receive(:execute!).and_return(... whatever result you want ...)
さらに、コードが正しいパラメーターを Google API に渡していることを確認したい場合は、上記をメッセージの期待値で補強する必要があります。API stub_chain の場合は、戻り値を返す必要があります。実行のためのメッセージの期待にフィード! 電話。
それがあなたの質問に答えているかどうかはまだわかりませんが、そうでない場合は、追加のコメントを読むのを楽しみにしています.