Just do IT

思うは招く

webmock で一度に複数回のAPIリクエストをするフリをしたい

やりたいこと

  • webmock を使っていて、一度の処理で複数回のAPI通信をするフリをしたい
  • リクエスURIのパラメーターがコードの中で変わるが、返ってくる複数のAPIレスポンスはまとめて処理したい

方法

この方法が最適なのかはわからないが、スタブ登録したものをひとつのテストケース内で呼び出したらテストが通った。

#ヘルパーにスタブ登録を切り出している

module StubHelper
  def stub_hoge!
    stub_1!
    stub_2!
    stub_3!
    stub_4!
    stub_5!
  end

  def stub_1!
    ~
  end

  def stub_2!
    ~
  end

  def stub_3!
    ~
  end

  def stub_4!
    ~
  end

  def stub_5!
    ~
  end
end

テスト側では

stub_hoge!

をしている。これで登録した5つのスタブが一度にまとめて呼び出される。

かなりブサイクなコードだし、適切かは自信がないが、これでテストが通ったというメモ。

今後さらに良い方法が見つかればアップデートしていく💪