こういうgem作ろうと思ってる

仕事でWEBサイトをリニューアルしました。
WordpressのサイトをRailsに移植したんですが、URLが8割変わっていて
SEOツールから見るとエラーになっているURLがあるとのこと。そういうURLはリダイレクトが必要らしい。

リダイレクトが必要なURLを聞いてみると量がとても多い。テストっぽいの欲しいと思った。
どうせならここでgem童貞を卒表したい。
いつ作るか?今でしょ!

どういうgemか

リクエスト投げてリダイレクト先のURLが期待とあっているか表示するテストツール。
rspec的な感じ。
WEBサーバを指定するとリダイレクト(リライト)するコードを吐けるようにもしたい。

インターフェース案

呼び出し側を先に考えてみる。

その1
rc = RedirectChecker.new('http://localhost:3000')

rc.check(path: '/dic/hoge/', go: {
  '123.html' => '/doc/123',
  '932.html' => '/doc/932'
})

rc.check(path: '/dic/', go: {
  '123.html' => '/123',
  '932.html' => '/932'
})

rc.check(path: '/list/', go: {
  '123.html' => '/list/123',
  '932.html' => '/list/932'
})

冗長が多いけど、どのURLがどこにリダイレクトするかわかりやすいと思う。

その2
class RedirectChecker
  @base_url = 'http://localhost:3000'

  path("/") do
    path("dic") do
      path("hoge") do
        go '123.html' => '/doc/123'
        go '932.html' => '/doc/932'
      end

      go '123.html' => '/123'
      go '932.html' => '/932'
    end

    path('list') do
      go '123.html' => '/list/123'
      go '932.html' => '/list/932'
    end
  end
end 

gem側の実装が全然イメージできてないんですが、ブロックの入れ子でURLの階層を表現する感じ。
rspecをイメージにしてる。すごく簡潔のように見えるけどなんかスッと頭に入ってこない。
可読性で言えばその1に軍配かなぁ。

ハイブリットもしくは他のも考えてみる。